Mehrere Formulare in einem Script

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Mehrere Formulare in einem Script

    Hier mein Script:
    es stellt den Versuch da, 2 Formulare in einer Datei abzuhandeln, was auch ganz gut functioniert!

    Folgendes Problem: sobald mein erstes Formular ausgefüllt und gesendet wurde, überprüft die function eingabe_check auf Eingabefehler! Ist ein Fehler vorhanden, läd er Formular 1 nochmal neu!
    Das selbe tut er bei Formular 2 mit function eingabe2_ckeck.

    Frage 1: Warum zeigt er mir die Fehlermeldungen nicht an, wenn er eins der Formulare aufgrund eines Fehlers nochmal neu läd? Was hab ich da falsch gemacht?

    Frage 2: Wie muss ich mein Script erweitern, damit er nach erfolgreichem absenden von Formular 2 noch einaml alle eingegeben Daten anzeigt, bevor ich diese dann an die Datenbank sende!

    Anmerkung: euch wird sofort auffallen, dass im sript die hiddenfelder fehlen, die die Variablen ins nexte Formular mitschleppen!
    hier hatte ich ein function vpassthru() aus den tutorials dieser Seite verwendet! funzt aber net!

    Hoffe ihr könnt mir helfen!

    PHP-Code:
    <?php
    $step 
    $_POST["step"];

    if(!
    $submit2 && !$submit){
      
    formular_ausgabe($_firstname,$_lastname,$_ort,$_plz,$_************e,$_geburtstag,$_email); 
    }
    if(
    $submit){
      echo 
    eingabe1_check($_firstname,$_lastname,$_ort,$_plz,$_geburtstag,$_email); 
    }
    if(
    $submit2){
      echo 
    eingabe2_check($_username,$_passwort,$_passwort2);
    }

     
    function 
    formular_ausgabe($_firstname,$_lastname,$_ort,$_plz,$_************e,$_geburtstag,$_email){ 
    echo 
    '<form method="post" name="formular" action="register2.php?step=2">
                                      <table align="center" cellpadding="0" cellspacing="0">
                                    <tr> '
    .$fehlermeldung.
                                  <td> 
                                     <p> '
    .$fehlerfirstname.' Vorname * 
                              <input name="_firstname" type="text" id="_firstname" size="25" maxlength="50" value="'
    .$_firstname.'">
                              <br>
                              <br>
                              '
    .$fehlerlastname.' Nachname * 
                              <input name="_lastname" type="text" id="_lastname" size="25" maxlength="50" value="'
    .$_lastname.'">
                                </p>
                                <p> '
    .$fehlerort.' Ort * 
                              <input name="_ort" type="text" id="_ort" size="30" maxlength="50" value="'
    .$_ort.'">
                              <br>
                              <br>
                              '
    .$fehlerplz.' Postleitzahl * 
                              <input name="_plz" type="text" id="_plz" size="6" maxlenght="6" value="'
    .$_plz.'">
                                </p>
                                <p>Geschlecht * 
                              <input type="radio" name="_************e[1]" value="männlich">
                              M 
                              <input type="radio" name="_************e[2]" value="weiblich">
                              W</p>
                                <p> '
    .$fehlergeburtstag.' Geburtsdatum * 
                              <input name="_geburtstag" type="text" id="_geburtstag" size="10" maxlenght="10" value="'
    .$_geburtstag.'">
                                </p>
                                <p>'
    .$fehleremail.' Email * 
                              <input name="_email" type="text" id="_geburtstag" size="30" maxlenght="120" value="'
    .$_email.'">
                              <br>
                              <br>
                              (*) Pflichtfelder </p>
                                <p> 
                              <input type="submit" name="submit" value="weiter" onClick="eingabe1_check($_firstname,$_lastname,$_ort,$_plz,$_geburtstag,$_email)">
                                </p>
                                  </td>
                                    </tr>
                                      </table>
                                        </form>'


    function 
    formular_ausgabe2($_username,$_passwort,$_passwort2){ 
    echo 
    '<form method="post" name="formular2" action="register2.php?step=3">
      <table align="center" cellpadding="0" cellspacing="0">
        <tr> '
    .$fehlermeldung2.
          <td> <p> '
    .$fehlerusername.' Benutzername * 
              <input name="_username" type="text" id="_username" size="25" maxlength="25" value="'
    .$_username.'">
              <br>
              <br>
              '
    .$fehlerpasswort.' Passwort * 
              <input name="_passwort" type="password" id="_passwort" size="25" maxlength="50" value="'
    .$_passwort.'">
            </p>
            <p> '
    .$fehlerpasswort.' Passwort nocheinmal eingeben * 
              <input name="_passwort2" type="password" id="_passwort2" size="25" maxlength="50" value="'
    .$_passwort2.'">
              <br>
              <br>
              (*) Pflichtfelder 
                    </p>
                    <p>
                        <input type="hidden" name="_firstname" value="'
    .$_firstname.'">
            <p> 
              <input type="submit" name="submit2" value="weiter">
            </p></td>
        </tr>
      </table>
      </form>'



    function 
    eingabe1_check($_firstname,$_lastname,$_ort,$_plz,$_geburtstag,$_email){ 
        if (
    $_firstname == "") { 
            
    $fehler 1
            
    $fehlermeldung.= " <div width=\"410\" bgcolor=\"#ffcccc\">Du hast nicht alle Pflichtfelder ausgefüllt!</div>\n<br>\n<br>\n";
        } 
        elseif (
    $_lastname == "") { 
            
    $fehler 1
            
    $fehlermeldung.= " <div width=\"410\" bgcolor=\"#ffcccc\">Du hast nicht alle Pflichtfelder ausgefüllt!</div>\n<br>\n<br>\n";
        } 
        elseif (
    $_ort == "") { 
            
    $fehler 1
            
    $fehlermeldung.= " <div width=\"410\" bgcolor=\"#ffcccc\">Du hast nicht alle Pflichtfelder ausgefüllt!</div>\n<br>\n<br>\n";
        } 
        elseif (
    $_plz == "") { 
            
    $fehler 1
            
    $fehlermeldung.= " <div width=\"410\" bgcolor=\"#ffcccc\">Du hast nicht alle Pflichtfelder ausgefüllt!</div>\n<br>\n<br>\n"
        } 
        elseif (
    $_geburtstag == "") { 
            
    $fehler 1
            
    $fehlermeldung.= " <div width=\"410\" bgcolor=\"#ffcccc\">Du hast nicht alle Pflichtfelder ausgefüllt!</div>\n<br>\n<br>\n"
        } 
        elseif (
    $_email == "") { 
            
    $fehler 1
            
    $fehlermeldung.= " <div width=\"410\" bgcolor=\"#ffcccc\">Du hast nicht alle Pflichtfelder ausgefüllt!</div>\n<br>\n<br>\n"
        } 
        else 
    $fehler 0
        
        if(
    preg_match('/[^a-zA-Z]/i'$_REQUEST['_firstname'])){ 
            
    $fehler 1
            
    $fehlerfirstname .= " <div width=\"410\" bgcolor=\"#ffcccc\">Falsche Eingabe: Nur Buchstaben möglich !</div>\n<br>\n<br>\n"
        } 
        if (
    preg_match('/[^a-zA-Z-]/i'$_REQUEST['_lastname'])) {
             
    $fehler 1
            
    $fehlerlastname .= " <div width=\"410\" bgcolor=\"#ffcccc\">Falsche Eingabe: Nur Buchstaben, Bindestrich oder Leerzeichen möglich !</div>\n<br>\n<br>\n"
        } 
        if (
    preg_match('/[^a-zA-Z. -]/i'$_REQUEST['_ort'])) { 
            
    $fehler 1
            
    $fehlerort .= " <div width=\"410\" bgcolor=\"#ffcccc\">Falsche Eingabe: Nur Buchstaben, Bindestrich, Punkt oder Leerzeich?????A????en möglich !</div>\n<br>\n<br>\n"
        } 
        if (
    preg_match('/\D/'$_REQUEST['_plz'])) { 
            
    $fehler 1
            
    $fehlerplz .= " <div width=\"410\" bgcolor=\"#ffcccc\">Falsche Eingabe: Nur Zahlen möglich !</div>\n<br>\n<br>\n"
        } 
        if (
    preg_match('/[^0-9.]/i'$_REQUEST['_geburtstag'])) { 
            
    $fehler 1
            
    $fehlergeburtstag .= " <div width=\"410\" bgcolor=\"#ffcccc\">Falsche Eingabe ! Bitte folgendes Format: (d.m.y)</div>\n<br>\n<br>\n"
        } 
        if (
    $fehler == 1){ return formular_ausgabe($_firstname,$_lastname,$_ort,$_plz,$_************e,$_geburtstag,$_email); 
        } 
        else{ return 
    formular_ausgabe2($_username,$_passwort,$_passwort2); 
        } 

    function 
    eingabe2_check($_username,$_passwort,$_passwort2){ 
        if (
    $_username == "") { 
            
    $fehler2 1
            
    $fehlermeldung2.=" <div width=\"410\" bgcolor=\"#ffcccc\">Du hast nicht alle Pflichtfelder ausgefüllt!</div>\n<br>\n<br>\n"
        } 
        elseif (
    $_passwort == "") { 
            
    $fehler2 1
            
    $fehlermeldung2.=" <div width=\"410\" bgcolor=\"#ffcccc\">Du hast nicht alle Pflichtfelder ausgefüllt!</div>\n<br>\n<br>\n"
        } 
        elseif (
    $_passwort2 == ""){
             
    $fehler2 1
            
    $fehlermeldung2.=" <div width=\"410\" bgcolor=\"#ffcccc\">Du hast nicht alle Pflichtfelder ausgefüllt!</div>\n<br>\n<br>\n"
        }
        else 
    $fehler2 0;
         
        if(
    preg_match('/[^0-9a-zA-Z_?|]/i'$_REQUEST['_username'])) { 
            
    $fehler2 1
            
    $fehlerusername .= " <div width=\"410\" bgcolor=\"#ffcccc\">Falsche Eingabe: Nur Buchstaben, Zahlen, Unterstrich möglich !</div>\n<br>\n<br>\n"
        } 
        
        if (
    $_passwort != $_passwort2) {
             
    $fehler2 1
            
    $fehlerpasswort .= " <div width=\"410\" bgcolor=\"#ffcccc\">Falsche Eingabe ! Die beiden Passwörter stimmen nicht überein !</div>\n<br>\n<br>\n"
        } 
        if (
    $fehler2 == 1){ return formular_ausgabe2($_username,$_passwort,$_passwort2); 
        } 
        if (
    $fehler2 == 0){ echo "lala"
        } 
    ?>




    EDIT:
    php-tags by wahsaga
    Zuletzt geändert von wahsaga; 21.11.2003, 18:54.
    Geht net gibts net...

  • #2
    Wie wärs wenn du
    erstens: den code zwischen [PHP ] und [/PHP] (ohne leerzeichen) schreibst, damit er bund und übersichtlich wird
    zweitens alle unwichtigen funktionen löschst, die weniger wichtigen kürzt, und nur das elementare stehen läßt?

    Dann findet sich vbestimmt jemand der sich das mal näher anschaut!
    Die Musikreview Seite

    hi, i'm a signature virus. copy me into your signature to help me spread.

    Kommentar

    Lädt...
    X