Willkommen in der Webstatt
User-1 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?
User-2 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"


xyz-141el

User-1 am 07.03.06 20:51

Mh, alles klar. xyz-48n weiß ich jetzt zumindest wo ich nicht mehr suchen muss.

User-1 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

User-3 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. ;)

User-1 am 11.03.06 16:21

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

User-3 am 11.03.06 17:10

xyz-48n wirst du ohne die guten alten Debug-Ausgaben nicht weiterkommen. ;)

User-1 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