Formular auswerten mit Fehlermeldung

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

  • Formular auswerten mit Fehlermeldung

    Hey,

    trotz suche im Forum bin ich nicht fündig geworden.

    Normalerweise ist der Aufbau eines Formular so:
    PHP-Code:
    if($submit)
        {
         if(
    $input-feld == "")
             {
              echo 
    "du hast des Feld nicht ausgefüllt!";
             }
         else
             {
              
    // Abfrage aus Datenbank
             
    }
         }

    <
    form action='daten.php' METHODE='POST'>
    <
    input type='text' name='input-feld'>
    </
    form
    Jetzt würde ich gern die Fehlermeldung hinter das Input fld bekommen. Wie geht das?
    *winks*
    Gilbert
    ------------------------------------------------
    Hilfe für eine Vielzahl von Problemen!!!
    http://www.1st-rootserver.de/

  • #2
    PHP-Code:
    if($submit)
        {
         if(
    $input-feld == "")
             {
              
    $err_message "du hast des Feld nicht ausgefüllt!";
             }
         else
             {
              
    // Abfrage aus Datenbank
             
    }
         }

    echo 
    "<form action='daten.php' METHODE='POST'>
    <input type='text' name='input-feld'>
    $err_message
    </form>"

    so hast du die Fehlermeldung hinter dem Feld!

    War das so gemeint ??

    Benutz in den Variablennamen keine "-"
    gruss

    Kommentar


    • #3
      Dank

      *habbrettvorkopf*
      *winks*
      Gilbert
      ------------------------------------------------
      Hilfe für eine Vielzahl von Problemen!!!
      http://www.1st-rootserver.de/

      Kommentar


      • #4
        Aber wie muss ich jetzt weiter machen, wenn alle Felder ausgefüllt sind und keine Fehler enthalten sind?
        *winks*
        Gilbert
        ------------------------------------------------
        Hilfe für eine Vielzahl von Problemen!!!
        http://www.1st-rootserver.de/

        Kommentar


        • #5
          gehen wir mal von 2 Feldern aus:

          PHP-Code:
          <?php
          if ($action == "verify") { //Hier wird das Formular überprüft
             
          if (strlen($input_feld1) < 1) { //Feld1 ist leer
                
          $error_message1 "Dieses Feld ist nicht ausgefüllt";
             }
             if (
          strlen($input_feld2) < 1) { //Feld2 ist leer
                
          $error_message2 "Dieses Feld ist nicht ausgefüllt";
             }
          }

          //Prüfen, ob Formular ok
          if (strlen($input_feld1) > && strlen($input_feld2) > 0) {
             
          //Formular ok
             
          mail();
             
          header(location:blablabla.php); //nur, wenn vorher noch keine Ausgabe erfolgte, ansonsten per Javascript
             
          exit();
          }

          //Das Formular wird immer angezeigt, wenn ein Eingabefehler vorliegt
             
          echo "<form action=\"daten.php?action=verify\" METHODE=\"POST\">
                <input type=\"text\" name=\"input_feld1\" value=\"
          $input_feld1\">$err_message1<br>
                <input type=\"text\" name=\"input_feld2\" value=\"
          $input_feld2\">$err_message2
             </form>"
          ;


          ?>
          hoffe, das hilft erstmal weiter ?!
          Zuletzt geändert von MoRtAlAn; 04.04.2002, 13:21.

          Kommentar


          • #6
            Gut der Fehlercheck läuft.

            Wenn ich jetzt alle Daten eingegeben habe und er auf die nächste Seite geht, übergibt er keine einzige Variable.

            Folgende Variablen müssen zur Verfügung gestellt werden:
            Das sind die Variablen die Überprüft werden.
            $Vorname
            $Nachname
            $Strasse
            $PLZ
            $Ort
            $beMail

            Das sind die Variablen die nicht geprüft werden brauchen.
            $Telefon
            $Fax
            $Lieferung
            $Zahlung
            $Kommentar


            Diese kommen aber nicht auf der Seite die durch header definiert ist an.

            Das einige was auf dieser Seite zur Verfügung steht ist die SessionID.
            *winks*
            Gilbert
            ------------------------------------------------
            Hilfe für eine Vielzahl von Problemen!!!
            http://www.1st-rootserver.de/

            Kommentar


            • #7
              du mußt in dem teil:
              PHP-Code:
              //Prüfen, ob Formular ok
              if (strlen($input_feld1) > && strlen($input_feld2) > 0) {
                 
              //Formular ok
                 
              mail();
                 
              header(location:blablabla.php); //nur, wenn vorher noch keine Ausgabe erfolgte, ansonsten per Javascript
                 
              exit();

              die Mail zusammenbauen und verschicken, der header gibt dich ja nur auf eine Seite, wohin du den Benutzer haben willst, "nachdem" er die Mail verschickt hat

              gruss

              Kommentar


              • #8
                Es soll ja zu diesem Zeitpunkt noch keine Mail verschickt werden. Auf der Seite die durch header(daten1.php) definiert istwird erst jetzt eine Warenkorbabfrage und dann geht es erst zur Mail.

                Auf der daten1.php will ich eine druckbare Rechnung für den Besteller erstellen. Mit Anschriftsdaten und den Artikeln.

                Daher brauche ich die Variablen auf der daten1.php. Aber wie bekomme ich die von daten.php auf daten1.php?
                *winks*
                Gilbert
                ------------------------------------------------
                Hilfe für eine Vielzahl von Problemen!!!
                http://www.1st-rootserver.de/

                Kommentar


                • #9
                  PHP-Code:
                  header(location:blablabla.php?Vorname=$Vorname&Nachname=$Nachname&Strasse=$Strasse&PLZ=$PLZ&Ort=$Ort&beMail=$beMail&Telefon=$Telefon&Fax=$Fax&Lieferung=$Lieferung&Zahlung=$Zahlung&Kommentar=$Kommentar); 

                  aber ob das die sauberste Lösung ist, wage ich zu bezweifeln!!!

                  denk dran, die Felder auf Sonderzeichen wie " / & etc zu prüfen, am besten Urlencoded übertragen

                  gruss

                  Kommentar


                  • #10
                    Wie jetzt, auf Sonderzeichen prüfen?

                    Ein Problem ist jetzt schon aufgetreten.

                    Wenn ein Zeilenumbruch im Kommentarfeld ist gibt es ein Server Error. Wie kann ich das jetzt noch einbauen?
                    *winks*
                    Gilbert
                    ------------------------------------------------
                    Hilfe für eine Vielzahl von Problemen!!!
                    http://www.1st-rootserver.de/

                    Kommentar


                    • #11
                      Wer kann mir hier weiter helfen?
                      *winks*
                      Gilbert
                      ------------------------------------------------
                      Hilfe für eine Vielzahl von Problemen!!!
                      http://www.1st-rootserver.de/

                      Kommentar


                      • #12
                        mit strip_tags alles ungewollte rausfitern, sonst kann ich ja html und php beispielsweise ausfüllen!

                        gruss

                        Kommentar


                        • #13
                          Bahnhof???

                          Hast du das mal aus Code-Schnipsel?
                          *winks*
                          Gilbert
                          ------------------------------------------------
                          Hilfe für eine Vielzahl von Problemen!!!
                          http://www.1st-rootserver.de/

                          Kommentar


                          • #14
                            PHP-Code:
                            $variable strip_tags($variable); //entfernt html und php 
                            http://www.php.net/manual/de/function.strip-tags.php

                            Kommentar


                            • #15
                              Was sagt mir diese Fehlermeldung?

                              [Thu Apr 04 19:28:53 2002] [error] [client 127.0.0.1] malformed header from script. Bad header=Auftragsbestättigung: c:/apache/php4/php.exe

                              Es wird folgender text aus einer Textarea in die Variable $Kommentar gegeben:

                              Bitte um
                              Auftragsbestättigung

                              Ich jage eigentlich die Variable durch folgende function:
                              Code:
                              $komm = strip_tags($Kommentar);
                              Was läuft hier falsch.
                              *winks*
                              Gilbert
                              ------------------------------------------------
                              Hilfe für eine Vielzahl von Problemen!!!
                              http://www.1st-rootserver.de/

                              Kommentar

                              Lädt...
                              X