20. juni 2003 - 13:26Der er
22 kommentarer og 1 løsning
Gem login i cookie
Hej.
Jeg har et website, med flere funktioner, som jeg ønsker kun er tilgængelige, hvis personen er logget ind. Men det er træls, at skulle logge ind hver eneste gang, man får brug for en funktion - derfor vil jeg lave det vha. cookies. Jeg har flg. krav :
- Ved logon oprettes en cookie, som "expire" når browseren lukkes eller websitet forlades - Ved logon (med "husk password") oprettes en cookie, som kun "expire", når man trykker på et log-ud-link
Da jeg aldrig har leget med sådan noget før, så får jeg brug for eksempler på :
- Oprette og gemme i cookie - Hente data fra cookie, og gemme i HTML variabel - Slette/expire cookie
AI bliver først for alvor en del af arbejdet, når teknologien integreres i den måde, vi arbejder på. At have adgang til AI betyder ikke nødvendigvis, at medarbejderne er klar til at bruge den.
Ahv > Cool, kort og kontant - sådan vil jeg have det :-) Du skriver "indhold af cookie" - hvis jeg nu skal have username og password i den, hvordan adskiller jeg så det, og henter det seperat ?
Synes godt om
Slettet bruger
20. juni 2003 - 13:37#6
Du kalder bare funktionen to gange. Men jeg synes, du skal kigge på sessions, da de er bedre til at behandle informationer, som skal "smides væk", når brugeren forlader websitet.
Ahv > Uha, lyder advanced - er det det ? Kan du svare på hvordan værdier blev tilknyttet navn og kode, og hvordan disse blev hentet ? Eller er det som i et array, hvor de har "numre" ?
Så må han lave en kombineret med sessions og cookie, så han tjekker for at man har sat hak i "Auto-login" og har man det opretter den så en cookie, når man så kommer igen tjekker den på om der er en cookie er der det lægger den indholdet i en session.
Vi vil have brugernavn og kdoeord ud hver for sig -> $oplysninger = explode("|",$_COOKIE['navncookie']); $brugernavn = $oplysninger['0']; $kodeord = $oplysninger['1'];
Vi kunne sige at indholdet af vore cookie var en md5("brugernavn kodeord");
Et lille eksempel ->
if ($_COOKIE['navncookie']) { // Vi tjekker om der findes en cookie $query = mysql_query("SELECT id, user, pass FROM tabel"); while ($row = mysql_fetch_array($query)){ // Vi laver et gennemløb af tabellen i databasen for at se om der er noget som matcher vores cookie if (md5("$row[user] $row[pass]") == $_COOKIE['navncookie']){ $_SESSION['id'] = $row['id']; // Hvis det er tilfældet registrer vi en session } } }
Nej, det skal heller ikke være i databasen, det gør vi uden for, når vi registrer cookien har vi netop brugernavn og kodeord i to variabler f.eks. -> $row[user] $row[pass]
Dem kan vi så lave en md5 på når vi smider den i en cookie -> setCookie("navncookie", md5("$row[user] $row[pass]"), time()+60*60*24*365*2);
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.