Hallo Leute,
ich möchte eine Seite programmieren, auf der man sich registrieren muss. Das ganze soll folgendermassen laufen:
1. Eingabe des gewünschten Benutzernamens
2. Eingabe der E-Mailadresse
Im Skript sol folgendes passieren:
1. Öffnen der DB und Auslesen der Benutzernamen
2. Wenn der Benutzername schon vorhanden ist, Abbruch und zurück mit Fehlermeldung.
3. Wenn der Benutzername noch nicht existiert, Abfrage ob das Feld ausgefüllt wurde, wenn nein, zurück mit Fehlermeldung.
4. Wenn das Feld für die Emailadresse leer ist, zurück mit Fehlermeldung.
5. Wenn also beide Fehler korrekt sind, wird ein Passwort generiert und an die Emailadresse gesendet.
6. Ausgabe einer Response-Seite.
Leider funktionieren die Schleifen nicht wirklich. Es wird immer ein unexpected T_ELSE moniert. Leider habe ich aber keine Ahnung, wie ich das so verschachteln muss, das das Skript ordnungsgemäß durchläuft.
Kann sich das mal jemand anschauen und einen Tipp geben?
ich möchte eine Seite programmieren, auf der man sich registrieren muss. Das ganze soll folgendermassen laufen:
1. Eingabe des gewünschten Benutzernamens
2. Eingabe der E-Mailadresse
Im Skript sol folgendes passieren:
1. Öffnen der DB und Auslesen der Benutzernamen
2. Wenn der Benutzername schon vorhanden ist, Abbruch und zurück mit Fehlermeldung.
3. Wenn der Benutzername noch nicht existiert, Abfrage ob das Feld ausgefüllt wurde, wenn nein, zurück mit Fehlermeldung.
4. Wenn das Feld für die Emailadresse leer ist, zurück mit Fehlermeldung.
5. Wenn also beide Fehler korrekt sind, wird ein Passwort generiert und an die Emailadresse gesendet.
6. Ausgabe einer Response-Seite.
Leider funktionieren die Schleifen nicht wirklich. Es wird immer ein unexpected T_ELSE moniert. Leider habe ich aber keine Ahnung, wie ich das so verschachteln muss, das das Skript ordnungsgemäß durchläuft.
Kann sich das mal jemand anschauen und einen Tipp geben?
PHP-Code:
<?php
include ("db_connect.php");
$abfrage1 = mysql_query("SELECT benutzer FROM xxx");
while ($row = mysql_fetch_object ($abfrage1)) {
if($row->benutzer==$benutzer) {
$error = 3;
$fehler = "Dieser Benutzername ist bereits vergeben.";
include ("register.php");
exit;
} else {
if ($benutzer == "") {
$error = 1;
$fehler = "Bitte gib einen Benutzernamen ein.";
include ("register.php");
exit;
}
if ($email == "") {
$error = 2;
$fehler = "Um dir in Zukunft Mails zu schicken, brauchen wir deine E-mailadresse.";
include ("register.php");
exit;
}
} else {
if (!function_exists("pw_generate")){
// @param integer $length default 10
// gibt Anzahl der Zeichen des Passwortes an
function pw_generate($length = 10) {
$chars_for_pw = "ABCDEFGHKLMNPQRSTUVWXYZ";
$chars_for_pw .= "23456789";
$chars_for_pw .= "abcdefghkmnpqrstuvwxyz";
$char_control = "";
srand((double) microtime() * 1000000);
for($i=0;$i<$length;$i++) {
$number = rand(0, strlen($chars_for_pw));
$char_control .= $chars_for_pw[$number];
}
return $char_control;
}
}
$passwort = pw_generate(10);
$sql = "INSERT INTO xxx SET benutzer='$benutzer', passwort='$passwort', email='$email'";
$result = mysql_query($sql);
//echo mysql_error();
$to = $_POST['email'];
$from = "xxx@xxx.de";
$header = "From:$from\n";
$header .= "Reply-To:$from\n";
$header = trim($header);
$subject = "Vielen Dank für deine Anmeldung!";
$message = "Bitte kehre nun zur Hauptseite [url]http://www.xxx.de/test[/url] zurück, um dich mit deinem Benutzernamen und dem folgenden Passwort einzuloggen: $passwort\n\nVielen Dank!";
mail($to, $subject, $message, $header);
include ("confirm_register.php");
}
}
?>

Kommentar