Anzeige

Registrierung mit PHP

Registrierung mit PHP | PSD-Tutorials.de

Erstellt von JoLe05, 07.04.2014.

  1. JoLe05

    JoLe05 Nicht mehr ganz neu hier

    Dabei seit:
    18.10.2009
    Beiträge:
    228
    Geschlecht:
    männlich
    Registrierung mit PHP
    Hallo Leute!

    Ich versuche ein normales Registrierungsformular zu erstellen. Leider klappt etwas bei der for Schleife nicht... Vielleicht könnt ihr mir weiterhelfen... danke

    Im Grunde ists ganz einfach... ich habe ein array mit Emails gespeichert... falls dieser der User eingibt im Feld Email sollte eigentlich eine Fehlermeldung erscheinen... Leider läuft die Schleife nicht durch und die Erfolgsmeldung nach der schleife wird immer ausgestrahlt...

    PHP:
    1. <?php
    2.  
    3. if(count($_POST)>0) {
    4.  
    5.     //Formular wurde abgeschickt weil Daten vorhanden sind
    6.     $Emails = array("mustermann@gmx.at","mustermann@gmx.de","mustermann@gmx.com");
    7.  
    8.     print_r($_POST);
    9.  
    10.     for($i=0; $i<count($Emails); $i++) {
    11.         if($_POST["Emailaddr"]==$Emails[$i]) {
    12.             $meldung="<p>Diese Email wird bereits verwendet</p>";
    13.         }
    14.     }
    15.  
    16.     $meldung="<p>Registrierung erfolgreich</p>";
    17.  
    18. } else{
    19.     $meldung="";
    20. }
    21. ?>
    22. <!DOCTYPE html>
    23. <html>
    24.  
    25. <head>
    26.     <meta charset="UTF-8">
    27.     <title>BSP3</title>
    28. </head>
    29.  
    30. <body>
    31. <?php
    32. echo($meldung);
    33. ?>
    34. <form name="frm" id="frm" method="post">
    35.     <fieldset>
    36.         <legend>Registrierung:</legend>
    37.         <label for="Vorname">Vorname:</label><input type="text" name="vorname" id="vorname" />
    38.         <label for="Nachname">Nachname:</label><input type="text" name="nachname" id="nachname" />
    39.         <label for="Emailaddr">Email:</label><input type="text" name="Emailaddr" id="Emailaddr" />
    40.         <label for="Password">Passwort:</label><input type="text" name="password" id="password" />
    41.         <input type="submit" value="Registrieren &rsaquo;" />
    42.     </fieldset>
    43. </form>
    44.  
    45. </body>
    46. </html>
     
    #1      
  2. Duddle

    Duddle Posting-Frequenz: 14µHz

    Dabei seit:
    03.02.2006
    Beiträge:
    3.864
    Geschlecht:
    männlich
    Ort:
    Dresden
    Registrierung mit PHP
    PHP:
    1.  
    2.   for($i=0; $i<count($Emails); $i++) {
    3.     if($_POST["Emailaddr"]==$Emails[$i]) {
    4.       $meldung="<p>Diese Email wird bereits verwendet</p>";
    5.     }
    6.  }
    7.  $meldung="<p>Registrierung erfolgreich</p>";
    8.  
    Du überschreibst die Variable $meldung nach der Schleife. Es ist also egal, was in der Schleife passiert. Allgemein besser wäre an dieser Stelle auch ein in_array().


    Duddle
     
    #2      
  3. JoLe05

    JoLe05 Nicht mehr ganz neu hier

    Dabei seit:
    18.10.2009
    Beiträge:
    228
    Geschlecht:
    männlich
    Registrierung mit PHP
    Hallo!

    Vielen Danke für den Input! Hab es geändert und des funktioniert

    PHP:
    1. for($i=0; $i<count($Emails); $i++) {
    2.         if($_POST["Emailaddr"]==$Emails[$i]) {
    3.             $meldung="<p>Diese Email wird bereits verwendet</p>";
    4.             break;
    5.         } else {
    6.             $meldung="<p>Registrierung erfolgreich</p>";
    7.         }
    8.     }
    Danke für den Tipp mit in_array(), aber das sollte nur ein triviales Beispiel sein, das Formular wird später dann über eine Datenbank laufen
     
    #3      
x
×
×