Kalma
Erfahrenes Mitglied
Hi,
mit Hilfe von Quaese habe ich mir eine schöne Ajax-Formvalidierung zusammengebastelt:
http://guerilla.ifloegel.de/register
Sobald man auf den Button klickt, und nichts eingetragen wurde, sollten eigentlich die Fehlermeldungen nacheinander in einem Div eingefadet werden.
Jetzt ist allerdings der Fall, dass die Meldungen einfach so auf dem weißen Bildschirm angezeigt werden, was mich wundert, denn es ging, und dann ging es auf einmal nicht mehr.
Hier ist mal, wie so eine PHP-Prüfungsdatei aufgebaut ist:
Ein paar Sachen habe ich einfach rausgeschnitten, die nicht relevant sind.
Ich wundere mich, warum es nicht läuft, denn alles ist richtig eingebunden usw usw.. Hundert mal kontrolliert.
Wäre super, wenn da jemand einen Blick drauf werfen könnte.
Danke und Gruß
David
mit Hilfe von Quaese habe ich mir eine schöne Ajax-Formvalidierung zusammengebastelt:
http://guerilla.ifloegel.de/register
Sobald man auf den Button klickt, und nichts eingetragen wurde, sollten eigentlich die Fehlermeldungen nacheinander in einem Div eingefadet werden.
Jetzt ist allerdings der Fall, dass die Meldungen einfach so auf dem weißen Bildschirm angezeigt werden, was mich wundert, denn es ging, und dann ging es auf einmal nicht mehr.
Hier ist mal, wie so eine PHP-Prüfungsdatei aufgebaut ist:
PHP:
$strRet = array();
// someone wants to register?
if(isset($_POST['register'])) {
// post values // obligation field
$nickname = $_POST['nickname']; // * | unique info
$password = $_POST['password']; // *
$r_password = $_POST['r_password']; // *
$email = $_POST['email']; // * | unique info
$firstname = $_POST['firstname']; // *
$lastname = $_POST['lastname'];
$terms = $_POST['terms']; // *
$step = '';
// check availability of nickname and email adress
$check_nickname = $db->unique('user', 'user_nickname', $nickname);
$check_email = $db->unique('user', 'user_email', $email);
if($check_nickname == 'notavailable' && $nickname != '') {
$strRet[] = '<li style="display: none;">Dein gewünschter Benutzername ist bereits vergeben!</li>';
$step = 'unique';
}
if($check_email == 'notavailable' && $email != '') {
$strRet[] = '<li style="display: none;">Diese Email Adresse wird bereits verwendet!</li>';
$step = 'unique';
}
// nickname and email adress unique?
if(count($strRet) == 0)
$step = 'values';
// check values if unique was tested
if($step == 'values') {
if(empty($nickname)) {
$strRet[] = '<li style="display: none;">Bitte wähle einen Benutzernamen!</li>';
}
if(empty($password)) {
$strRet[] = '<li style="display: none;">Bitte wähle ein Passwort!</li>';
}
if(empty($r_password)) {
$strRet[] = '<li style="display: none;">Bitte wiederhole dein Passwort!</li>';
}
}
echo(rawurlencode(arr2json($strRet)));
exit();
}
// show displayfunction here later
require(TEMPLATE_DIR.'/register.html');
Ein paar Sachen habe ich einfach rausgeschnitten, die nicht relevant sind.
Ich wundere mich, warum es nicht läuft, denn alles ist richtig eingebunden usw usw.. Hundert mal kontrolliert.
Wäre super, wenn da jemand einen Blick drauf werfen könnte.
Danke und Gruß
David