Guten,
Ich schreibe gerade ne "Passwort vergessen" Funktion, leider hänge ich an einem Punkt irgend wie feste!
Achso Passwörter sind verschlüsselt MD5();
So möchte ich das gerne machen:
--> Kunde trägt bei "passwort" vergessen seine Email ein
--> Es wird gecheckt ob Email im System vorhanden ist.
--> Script generiert ein code (30Zeilen) der in einer DB gespeichert wird, mit Zusatz Informationen wie "id" - "userid" "email" - "code(die 30zeilen)".
Kunde bekommt eine E-mail:
bla bla new.php?valid_code=der generierte code.
Kunde ruft den Link auf, es wird geprüft und ein neues Passwort wird generiert und dem Kunde per E-mail geschickt!
Soweit binsch nun.
Aber:
Wenn der Kunde kein neues Passwort will, weil es im wieder eingefallen ist, oder sich irgend einer einen Spaß erlaubt möchte ich das der link und die Daten die noch in die DB geschrieben wurden wieder gelöscht werden ( 24Stunden ).
Meine Idee:
Beim Anlegen des Code´s Zeit mit rein schreiben Time()
dann per PHP prüfen ob Zeit abgelaufen ist, wenn ja, löschen!
etwa so in der Art:
Irgend wie so :-(
Kann da wer nen denk anstoß geben?
lg
Ich schreibe gerade ne "Passwort vergessen" Funktion, leider hänge ich an einem Punkt irgend wie feste!
Achso Passwörter sind verschlüsselt MD5();
So möchte ich das gerne machen:
--> Kunde trägt bei "passwort" vergessen seine Email ein
--> Es wird gecheckt ob Email im System vorhanden ist.
--> Script generiert ein code (30Zeilen) der in einer DB gespeichert wird, mit Zusatz Informationen wie "id" - "userid" "email" - "code(die 30zeilen)".
Kunde bekommt eine E-mail:
bla bla new.php?valid_code=der generierte code.
Kunde ruft den Link auf, es wird geprüft und ein neues Passwort wird generiert und dem Kunde per E-mail geschickt!
Soweit binsch nun.
Aber:
Wenn der Kunde kein neues Passwort will, weil es im wieder eingefallen ist, oder sich irgend einer einen Spaß erlaubt möchte ich das der link und die Daten die noch in die DB geschrieben wurden wieder gelöscht werden ( 24Stunden ).
Meine Idee:
Beim Anlegen des Code´s Zeit mit rein schreiben Time()
dann per PHP prüfen ob Zeit abgelaufen ist, wenn ja, löschen!
etwa so in der Art:
PHP:
$sek = 1*86400;
$d = gmtime() - $sek;
mysql_query("DELETE FROM x_pw WHERE added >= $d");
Irgend wie so :-(
Kann da wer nen denk anstoß geben?
lg