• Hi,

    Ich bastel mir gerade ein Registrierungsscript, hab da wohl ein paar Fehler gemacht, wobei ich die nicht wirklich lösen kann.

    Also Die Überprüfen funktionieren alle und er schreibt mir, wenn alles richtig ausgefüllt wurde, auch neue Datensätze in die Datenbank. Die Fehlermeldungen "spielen aber verrückt".

    So hier die php Datei (Sieht zwar im ersten Moment bissl viel aus, wenn man die Kommentar aber weglässt egeintlich wirklich wenig;-))



    Also die Überprüfung, ob alles Felder ausgefüllt worden sind klappt. Passwort vergleichen funktioniert auch und die überprüfung, ob der Username schon in der Tabelle vorhanden ist funktioniert auch.

    Die Fehlermeldungen sich aber irgendwie durcheinander :confused:

    Die Fehlermeldungen speicher ich in Variablen ab, diese Lade ich am anfang des scriptes rein. Jetzt kommen die Fehlermeldungen die derzeit im Script ausgegeben werden sollten:

    PHP
    <?php
    $meldung_registrierung = "Ihr Benutzerkonto wurde erfolgreich erstellt! Bitte steigen sie bei ihrem Emailkonto ($email) ein und aktivieren sie ihr Benutzerkonto.";
    $fehler_Felder = "Bitte füllen Sie alle Felder korrekt aus!";
    $fehler_eintrag = "Dein Benutzerkonto konnte nicht erstellt werden";
    $fehler_benutzername = "Der Benutzname existiert bereits.";
    ?>


    Okay, also, hier kann man sich das Ganze ansehen und testen: http://www.game.nicolas-pecher.com/test.php

    Wenn man die Seite nur aufruft kommt schon die fehlermeldung - Der Benutzname existiert bereits.

    Und wenn man 2 unterschiedliche PWs eingibt bleibt die - Der Benutzname existiert bereits. - Fehlermeldung. Dabei müsste aber kommen: "Bitte füllen Sie alle Felder korrekt aus!"

    Also versteht ihr was ich mein? Die Überprüfung klappt zwar und er tragt bei Fehlerhaften ausfüllen des Formulars auch nix in die DB, aber Fehlermeldungen stimmen nicht :confused:

    Wäre euch sehr dankbar wenn ihr mir wiedermal weiterhelfen könntet!
    Grüße
    Nico

  • Lern doch mal Grundlagen bevor du dich an eine Registrierung waagst....

    1. $username = "" , vergleiche werden mit == oder === gemacht

    2. PHP_SELF nicht ungesichert( gegen XSS htmlspezialchars zb) verwenden

    3. Richtig debuggen

    Einmal editiert, zuletzt von Pion (30. September 2010 um 17:05)

  • Wie schnell du das Editiert hast kannst du gar nicht Punkt 3 von meinen Posting durchgearbeitet haben,.... Wir geben Hilfe zur Selbhilfe machen aber äußerst selten komplett Lösungen

    Aber von mir aus hier noch ein unnötiger Tipp:
    Berechne / Verarbeite das Formular erst nachdem es abgeschickt wurde das geht zb mit

    Code
    if(isset($_POST['muh'])) { // deine verarbeitung}