Avatar billede cronaldo Nybegynder
08. juni 2006 - 00:09 Der er 8 kommentarer og
1 løsning

session-baseret site, hvordan laves et gem login?

Jeg har et site der er baseret på sessions, hvordan kan jeg lave en gem login-funktion hertil? (:
Avatar billede Slettet bruger
08. juni 2006 - 00:16 #1
Du skal vist lave en setcookie();
http://dk2.php.net/setcookie
Her skal du så tjekke om den cookie findes på maskinen, hvis den gør skal man logges ind, med den bruger der står i cookien, og så skal du nok smide nogen krypteret oplysninger ind i cookien.
Så det ikke bare lige er til at lave cookien selv, og være logget ind som administrator eller lign.

Ved ikke præcist hvordan man skal lave det, men det er vist sådan noget lign.

PS. Jeg har fået af vide det er en god idé at de oplysninger man smider i cookies at man smider dem ind i databasen også, for at tjekke om der er blevet ændret i cookiesen.
Avatar billede cronaldo Nybegynder
08. juni 2006 - 00:35 #2
jeg laver da selvfølgelig kun sådan at brugernavn og kode står i cookien og så bliver det hentet hver gang, og så starter det selv sessions'ene :P
Avatar billede Slettet bruger
08. juni 2006 - 07:43 #3
Jamen brugerens kode skal vil ikke stå i cookien, af sikkerheds messig oversager ville det da være dumt.
Jeg ville da mindst af alt smide en md5(); på kodeordet, og evt. smide en ip i filen.
Men smid det i database alligevel og tjek så om der er blevet rettet i det.
Avatar billede cronaldo Nybegynder
09. juni 2006 - 20:51 #4
Gider du skrive en komplet "setcookie" til mig, så ? (:
Avatar billede Slettet bruger
09. juni 2006 - 22:06 #5
Jeg har som sag ikke selv prøvet dette før.
Men jeg vil tror det skal være noget lignende:

setcookie("MinCookieFil", "Besked", tid);



Min måde:
$ip = $_SERVER['REMOTE_ADDR'];
$besked = md5($brugernavn)."_".md5($kodeord)."_".md5($ip);
if(setcookie("MinCookieFil", $besked, 60*60*24)) {
  $sql = "INSERT INTO cookieDump (bruger, cookie, dato, ip) VALUES ('".$bruger."', '".$besked."', NOW(), '".$ip."')";
  if(!mysql_query($sql)) {
    echo "Kunne ikke udføre funktionen.\nPrøv igen.";
    if(!unlink($_COOKIE['MinCookieFil'])) {
      echo "FEJL: Kunne ikke slette cookien"; //Eller hvad der nu skulle fortælles til brugeren
    }
  }
} else  {
  echo "Fejl: Kunne ikke gemme cookien";
}
Avatar billede cronaldo Nybegynder
03. december 2006 - 01:12 #6
smid svar :b
Avatar billede cronaldo Nybegynder
05. juli 2008 - 23:36 #7
lukker :) skrive hvis I vil have point!
Avatar billede Slettet bruger
08. juli 2008 - 08:19 #8
hehe sorry har ikke set det, men du skal self også ha' et check på om cookie'sene findes før du laver en.
Avatar billede Slettet bruger
07. september 2008 - 23:51 #9
En helt andet ting, er self skal kodeordet ikke være med i cookie'sene, men du skal lave en eller anden random-streng og gemmer med i cookie'sene, og du skal så også sætter det ind i databasen, og tjekke op mod om det er det samme.

(Grunden til kodeordet er at det er meget riski at gemme sådannet data i en cookie)
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
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

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