thx, so funktioniert alles.
Allerdings kommt schon mein nächstes Problem Ich möchte eine E-Mail Validierung haben, dass heißt der Unix-Timestamp wird bei der Registrierung in die MySQL-Tabelle geschrieben. Der Nutzer bekommt eine Mail mit einem Validierungslink (validate.php?UNIXTIMESTAMP NAME). Sollte er diesen Link nicht aufgerufen haben und versucht sich einzuloggen, sollte eine Nachricht kommen. Diese funktioniert allerdings nicht. Hier der Codeteil:
Hier der Teil der überprüft ob die Daten richtig sind:
$sql = "SELECT ".
"ID, name, geld, admin, passwort, bday ".
"FROM ".
"user ".
"WHERE ".
"(name like '".$_REQUEST["name"]."') AND ".
"(passwort = '".md5($_REQUEST["password"])."')";
$sqlv = "SELECT validate FROM user WHERE name like '".$_REQUEST["name"]."'";
$pwd = mysql_result(mysql_query($sqlv),0) or die(mysql_error());
$result = mysql_query($sql) or die(mysql_error());
if(mysql_num_rows($result) > 0)
{
// Passwort ist korrekt.
if($pwd == 0)
{
header ("Location: login.php?not");
}
else
{
$data = mysql_fetch_array ($result);
$_SESSION["user_id"] = $data["ID"];
$_SESSION["user_name"] = $data["name"];
$_SESSION["user_geld"] = $data["geld"];
$_SESSION["user_admin"] = $data["admin"];
$_SESSION["user_pw"] = $data["passwort"];
$_SESSION["user_bday"] = $data["bday"];
header ("Location: intern.php");
}
}
Alles anzeigen
Und hier der Teil der mit GET überprüft ob der Nutzer versucht hat sich einzuloggen, aber nicht validiert ist:
if(isset($_GET['not']))
{
echo '<center><br><br><br>
<form action="" method="post">
<fieldset>
<legend>Logge dich ein</legend>
<p><b> Dein Account ist noch nicht bestätigt. Rufe den Link in der E-Mail auf. </b></p>
<p><label for="name">Benutzername</label> <input type="text" name="name" /></p>
<p><label for="password">Passwort</label> <input type="password" name="password" /></p>
<input type="submit" name="gesendet" value="Einloggen"/>
<p> Noch nicht <a href="register.php">registriert?</a> </p>
</fieldset>
</form></center>';
}
Alles anzeigen
Ist eigentlich noch etwas komplexer gehalten das Dokument, aber ich habe keine Lust alle möglichen Schnipsel von den 200 Zeilen rauszukopieren^^
Schaut euch bitte selber an was dann passiert:
http://www.usr32.eagle-cms.net/login.php
Name: Paul, Passwort: geheim
Und: http://www.usr32.eagle-cms.net/login.php?not (Wenn man nicht validiert wäre)
Mit freundlichen Grüßen
Padarom
**edit**
Für diejenigen die sich das nicht ansehen wollen, wenn man seine Logindaten eingibt (und eben nicht valide ist) kommt kein Formular mehr... Und wenn man das ?not hintendran einfügt kommen zwei Formulare, eins mit der Nachricht dass man nicht valid ist, das andere normal.
Mit freundlichen Grüßen
Padarom