Hi,
wie kann ich abfragen, ob eine Registrierung erfolgreich war und ohne Umwege auf eine neue Seite leiten?
Also wie folgt: Button gedrückt, richtige Werte in die DB geschrieben, SessionStart und weiter (quasi wie eingeloggt durch Registrierung).
Das würde dieses Skript hier zu genau dem erweitern was ich mir vorstelle. Ohnehin haben mir allein die Erklärungen in den Videos schon einiges gelernt
Zusätzlich wird bei mir fast immer die Fehlermeldung $lang_register_errorStmt angezeigt... zB hier:
Bild: http://www.abload.de/img/unbenanntq4ym6.png
Habe $salt und den Inhalt der $errors in eine Lang-Datei und die config.php ausgelagert.
Es werden sonst keine Fehlermeldungen angegeben. Ich mein da stimmt doch irgendwas noch nicht.
wie kann ich abfragen, ob eine Registrierung erfolgreich war und ohne Umwege auf eine neue Seite leiten?
Also wie folgt: Button gedrückt, richtige Werte in die DB geschrieben, SessionStart und weiter (quasi wie eingeloggt durch Registrierung).
Das würde dieses Skript hier zu genau dem erweitern was ich mir vorstelle. Ohnehin haben mir allein die Erklärungen in den Videos schon einiges gelernt
Zusätzlich wird bei mir fast immer die Fehlermeldung $lang_register_errorStmt angezeigt... zB hier:
Bild: http://www.abload.de/img/unbenanntq4ym6.png
Habe $salt und den Inhalt der $errors in eine Lang-Datei und die config.php ausgelagert.
Es werden sonst keine Fehlermeldungen angegeben. Ich mein da stimmt doch irgendwas noch nicht.
PHP:
<?php
if(!isset($_POST['submit'])) return;
if(!isset($_POST['username']) || !isset($_POST['email']) || !isset($_POST['password']) ||
empty($_POST['username']) || empty($_POST['email']) || empty($_POST['password'])) {
$error = $lang_register_errorForm;
return;
}
var_dump($_POST['username']);
if(strlen($_POST['username']) > $lang_game_usernameMaxLenght ) {
$error = $lang_register_errorUsername;
return;
}
$_POST['username'] = trim($_POST['username']);
var_dump($_POST['email']);
if(!filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) {
$error = $lang_register_errorEmail;
return;
}
var_dump($_POST['password']);
$_POST['password'] = hash('sha256', $_POST['password'][0].$salt);
$user_ip = ip2long($_SERVER['REMOTE_ADDR']);
$sql = 'INSERT INTO users
(username, email, password, IP, registerDate)
VALUES
(?, ?, ?, ?, NOW())';
$stmt = $db->prepare($sql);
$stmt->bind_param('sssi', $_POST['username'], $_POST['email'], $_POST['password'], $user_ip);
if(!$stmt->execute()) {
if(strpos($db->error, 'Duplicate') !== false) {
$error = $lang_register_errorDuplicate;
}
$error = $lang_register_errorStmt;
return;
}
$stmt->close();
$success = $lang_register_success;
?>
Zuletzt bearbeitet: