Willkommen in der Webstatt Zum Webstatt Blog und Stories
Sven Sven am 07.03.06 20:39

Muh,
Verzweifle hier gerade an meinem Registrierungsmodul :/
Irgendwie werden die Daten immer 3x in die MySQL Datenbank eingetragen, würde also für einen 3xigen Aufruf der Funktion sprechen. Aber ich seh´s einfach nicht :

// Do register
function do_register () {
global $_SETTINGS;
$main = build_sectiontitle ('registrieren', 'Registrierung erfolgreich abgeschlossen!');
$main .= loadtpl ($_SETTINGS['template_path'] . 'do_register.htm');
$email = loadtpl ($_SETTINGS['email_path'] . 'register.mail');

$username = secure($_POST['username'], 1, 1);
$email = secure($_POST['email'], 1, 1);
$password = generate_pw($username . $email);
$password2 = sha1($password);
$age = '' . $_POST['jahr'] . '-' . $_POST['monat'] . '-' . $_POST['tag'] . '';

$query = 'INSERT INTO `ptb_user` SET username="' . $username . '", userregmail="' . $email . '", usermail="' . $email . '", userpassword="' . $password2 . '", userage="' . $age . '", usergroup="1"';
$sql = mysql_query ($query) or die ('Datenbankfehler in Zeile ' . __LINE__ . ' : <div class="error"><b>' . mysql_error () . '</b></div>');

$_SESSION = array();

return $main;
}

// Registration control unit
function registrieren () {
global $_SETTINGS;
global $_ERROR;

if(@secure($_POST['do_register'], 1, 1) == $_SETTINGS['post_key']) {
if(empty($_POST['username']) OR empty($_POST['email'])) {
return show_registerform ($_ERROR['all_fields']);
} else {
if(!isset($_POST['bedingungen'])) {
return show_registerform ($_ERROR['bedingungen']);
} else {
return do_register ();
}
}
} else {
return show_registerform ();
}
}


Ich weiß dass das If-Geschachtele plöt ist, ist nur improvisiert hingekrizelt um´s testen zu können ;)

netcup.de Warum gibt es hier Werbung?
Michael Michael am 07.03.06 20:48

Alleine aus diesem Codestück kann es nicht kommen.
Du kannst das Problem umgehen aber nicht lösen, wenn du bei do_register abfragst, ob der User schon vorhanden ist.

Ansonsten sind viel mehr die globalen Variablen schrecklich als die verschachtelten IF Abfragen.

Wenn du mehr Code zeigst suche ich weiter nach dem "Fehler"


Michael

Sven Sven am 07.03.06 20:51

Mh, alles klar. Dann weiß ich jetzt zumindest wo ich nicht mehr suchen muss.

Sven Sven am 11.03.06 15:27

Mh, ich finde einfach nix :/
Erbarmt sich eventuell mal jemand wenn er Zeit hat und schaut sich das ganze mal an?
Klick mir

milahu milahu am 11.03.06 16:18

Hab auf den ersten Blick auch nichts verdächtiges gefunden, aber verwende mal require_once() statt include() bzw. require(), vielleicht behebt das sogar das Problem. ;)

Sven Sven am 11.03.06 16:21

Mh, danke das du dir das mal angeguckt hast. Leider lag es nicht daran :/

milahu milahu am 11.03.06 17:10

Dann wirst du ohne die guten alten Debug-Ausgaben nicht weiterkommen. ;)

Sven Sven am 11.03.06 17:24

Ich bin aber auch ein Hornöchsle xD
Habs rausbekommen, danke für die Hilfe.

Creative Commons Lizenzvertrag
Alle Inhalte des Webstatt-Archivs stehen unter einer Creative Commons Namensnennung - Weitergabe unter gleichen Bedingungen 3.0 Unported Lizenz.

Impressum & Kontakt