Avatar billede repsej22 Nybegynder
27. september 2004 - 14:57 Der er 12 kommentarer og
1 løsning

Password beskyttelse

Jeg har lavet en simpel password beskyttelse som vist i:
http://eksperten.dk/spm/413639

Javascriptet ser således ud:

<script type="text/JavaScript">
function login() {
    var loc, vars, user, pass, im
    loc = location.href;
    if ( loc.indexOf("?")<0 ) return false;
    loc = loc.split("?");
    if ( loc[1].indexOf("&")<0 ) return false;
    vars = loc[1].split("&");
    user = vars[0].split("=")[1];
    pass = vars[1].split("=")[1];
    im = new Image();
    im.onload = function() {
        location.href = "erfa213135131/";
    }
    im.onerror = function() {
        alert("Nope ... pr\370v igen :o)");
    }
    im.src = user+"_"+pass+".gif";
}

window.onload = login;
</script>

Det virker for så vidt fint. Hvis jeg har et billede i mappen der hedder 1_1.gif bliver man ført hen til den mappe der hedder "erfa213135131" når man taster 1 i både brugernavn og password. Jeg kunne imidlertid godt tænke mig at have flere mapper, dvs. at hvis man taster f.eks 2 i både brugernavn og password bliver man ført hen til en mappe der f.eks hedder erfa2. Hvis man taster 3 kommer man til erfa3 osv.

Kan det lade sig gøre?


P.S. Og jeg ved godt at det ikke er det smarteste at lav passwordbeskyttelse i javascript, men sikkerheden behøver ikke at være helt i top. Og jeg vil også gerne have noget der er webhotel-uafhængigt.
Avatar billede cyberz Nybegynder
27. september 2004 - 15:05 #1
hmm lidt ligesom i flere brugere, med adgang til hver deres mappe.. det er set før, men lige hvor, har du checket script.dk og hotscripts.com igennem ?
Avatar billede roenving Novice
27. september 2004 - 15:06 #2
F.eks.

    im.onload = function() {
        location.href = "erfa" + user + "/";
    }
Avatar billede repsej22 Nybegynder
27. september 2004 - 15:14 #3
Jeg ville helst beholde det script jeg allerede har (nu har jeg endelig fået det til at virke). Og havde håbet på at man "bare" kunne tilrette det en smule.

roenving> Er det noget jeg skal kopiere ind i mit script?
Avatar billede roenving Novice
27. september 2004 - 15:27 #4
Ja, du erstatter bare de 3 linjer, du har i scriptet, som næsten ligner de ovenstående !-)
Avatar billede repsej22 Nybegynder
27. september 2004 - 15:50 #5
takker...jeg kan bare ikke få det til at virke  :o(

Scriptet ser nu således ud:


function login() {
    var loc, vars, user, pass, im
    loc = location.href;
    if ( loc.indexOf("?")<0 ) return false;
    loc = loc.split("?");
    if ( loc[1].indexOf("&")<0 ) return false;
    vars = loc[1].split("&");
    user = vars[0].split("=")[1];
    pass = vars[1].split("=")[1];
    im = new Image();
    im.onload = function() {
    location.href = "erfa"+user+"/";
    }
    im.onerror = function() {
        alert("Nope ... pr\370v igen :o)");
    }
    im.src = user+"_"+pass+".gif";
}

window.onload = login;

Men der sker ikke en pind når jeg taster password ind...eller ikke hvis jeg taster noget forkert ind. Før kom der et javascript vindue op.

Du kan se det her: http://www.mouselab.dk/new2-k/erfagrupper.html
Avatar billede roenving Novice
27. september 2004 - 15:56 #6
Argh, jeg glemte jo lige en af specialiteterne ved at bruge virtuelle funktioner ...

Erstat det jeg tidligere har angivet med:

var href;
function login() {
    var loc, vars, user, pass, im;
    loc = location.href;
    if ( loc.indexOf("?")<0 ) return false;
    loc = loc.split("?");
    if ( loc[1].indexOf("&")<0 ) return false;
    vars = loc[1].split("&");
    user = vars[0].split("=")[1];
    pass = vars[1].split("=")[1];
    im = new Image();
    href = "erfa"+user+"/";
    im.onload = function() {
        location.href = href;
    }
    im.onerror = function() {
        alert("Nope ... pr\370v igen :o)");
    }
    im.src = user+"_"+pass+".gif";
}

window.onload = login;
Avatar billede repsej22 Nybegynder
27. september 2004 - 16:14 #7
Det ser ud til at virke...dog kun på PC

Jeg sidder på mac og der virker det slet ikke i Explorer og delvist ikke i Safari.
Hvis du lige har et svar på hvordan det også kommer til at virke på mac, må du da gerne lige komme med det.
Ellers send mig et svar så lukker jeg spørgsmålet

De brugere der skal logge ind på bruger vist alle PCere så det burde ikke være det store problem.

...OG TUSIND TAK FOR HJÆLPEN!!!
Avatar billede roenving Novice
27. september 2004 - 16:21 #8
Ifølge ole, som jo har lavet dit lille script, er IE/Mac også det rene l*** ...

-- og da den netop er så dårlig, og aldrig opdateres mere, skal du vist ikke være bange for at det ikke dur der !-)

-- og hvad mangler i Safari ?-)
Avatar billede repsej22 Nybegynder
27. september 2004 - 17:27 #9
I Safari kommer der ikke nogen fejlmelding hvis man taster forkert brugernavn/password. Hvis man taster f.eks safari/safari prøver den bare at vise safari.html.
Avatar billede roenving Novice
27. september 2004 - 17:30 #10
-- det lyder som om Safari ikke understøtter onerror på img-tagget ...
Avatar billede repsej22 Nybegynder
27. september 2004 - 21:00 #11
Jeg er godt tilfreds...send mig et svar så lukker jeg spørgsmålet  :o)
Avatar billede roenving Novice
28. september 2004 - 10:44 #12
Velbekomme '-)
Avatar billede roenving Novice
28. september 2004 - 10:56 #13
Tak for point ;~}
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester