Phil Z.: Was haltet ihr von meinem User-Login-System?

Beitrag lesen

Hallo,
was haltet ihr von diesem System?

Auf der Seite index.php gibt es ein Anmeldeformular, ist man angemeldet ist es nicht sichtbar, ist man nicht angemeldet, ist es sichtbar.

Grundvorraussetzung:
Sobald man auf die Seite kommt, wird eine Session gestartet mit der Variable $_SESSION['logg']=false.

Name und Passwort stehen in einer MySQL Datenbank.
Das Passwort ist stark verschlüsselt: md5(sha1(md5(PASSWORT.anhängsel)))

Zum Login:
1. Der Besucher gibt Namen und Passwort in ein Formular(index.php) ein. Wenn man will, kann man die Checkbox "Angemeldet bleiben" anklicken, so bleibt man beim nächsten Besuch der Seite angemeldet.

2. Name und Passwort werden per $_POST an "login.php" übergeben.

3. Beide eingaben werden "gesichert" mit
mysql_real_escape_string(trim(PASSWORT bzw NAME))

4. Das Passwort wird verschlüsselt md5(sha1(md5(PASSWORT.anhängsel)))

5. In der Datenbank wird nachgeguckt ob der Name mit dem Passwort vorhanden ist.

6. Falls ja wird der vorhandenen Session folgendes beigefügt:

  • Benutzername $_SESSION['name']=name
  • IP $_SESSION['ip']=ip des besuchers
  • $_SESSION['logg']=true;

7. Ein Cookie wird gesetzt mit den Werten:

  • $_COOKIE['logg']=true
  • $_COOKIE['name']=name

8. Es wird auf index.php zurückgeleitet.

Auf der index.php wird folgendes Überprüft und gemacht

  • sind die session variablen ip, name und logg vorhanden
  • entspricht die variable ip der aktuellen ip des besuchers
  • ist der wert der variablen name in der datenbank vorhanden
  • ist der wert der variable logg = true

FALLS das nicht vorhanden ist, wird folgendes gemacht:

  • ist das Cookie vorhanden?
  • steht der wert von $_COOKIE['name'] in der db?
  • ist $_COOKIE['logg']=true?
    Falls ja wird der vorhandenen Session folgendes beigefügt:
  • Benutzername $_SESSION['name']=name
  • IP $_SESSION['ip']=ip des besuchers
  • $_SESSION['logg']=true;

Was haltet ihr davon?

mfg

Phil Z.