Ankündigung

Einklappen
Keine Ankündigung bisher.

Formularfelder prüfen ob Inhalt enthalten.

Einklappen

Neue Werbung 2019

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

  • Formularfelder prüfen ob Inhalt enthalten.

    Hallo!
    Bin neu hier, hab mich jetzt mal angemeldet. Suche seit gestern nach einer Lösung aber speziell auf mein Problem habe ich keine Lösung gefunden...

    Ich möchte meine Formularfelder prüfen, ob Inhalt eingegeben wurde, und zwar mach ich das so:

    PHP-Code:
    if(empty($_REQUEST['stueck']) || empty($_REQUEST['farbe']) || empty($_REQUEST['name']) || empty($_REQUEST['email']) || empty($_REQUEST['strasse']) || empty(    $_REQUEST['plzort']))
        {
            echo
    "<p align=\"center\">Sie haben ein oder mehrere Pflichtfelder nicht ausgefüllt!<br /><br /><b><a href=\"javascript:history.back();\">zurück</a></b></p>";
        }
        else
        {
          ..... 
    Nun hätte ich es aber gern so, dass er jedes Feld einzeln prüft und ich dann schreiben kann halt Sie haben Email nicht ausgefüllt oder so.

    Gedacht hatte ich mir das so:

    PHP-Code:
    if(empty($_REQUEST['stueck'])) 
     {
            echo
    "Sie haben die Stückzahl nicht ausgefüllt!";
        }
    if(empty(
    $_REQUEST['farbe'])) 
     {
             echo
    "Bitte geben Sie eine Farbe an!";
         }
      .... 
    usw
        
    else
        {
          ..... 
    Das heißt, ich möchte mehrere if-Anfragen machen aber dann halt nur eine else... Wenn ich das aber mache, dann kommt mein Bestätigungstext nicht mehr und die Email kommt auch nicht bei mir an...
    Ich hoffe doch ihr könnt mir da helfen...?

    Liebe Grüße
    Denise

  • #2
    Mach sowas in der Art:
    $fehler = array();
    if(empty($_REQUEST['stueck']))
    {
    $fehler[] =
    "Sie haben die Stückzahl nicht ausgefüllt!"
    ;
    }
    if(empty(
    $_REQUEST['farbe'
    ]))
    {
    $fehler[] =
    "Bitte geben Sie eine Farbe an!"
    ;
    }
    ....
    usw
    if(count($fehler)>0){

    fehlermeldungen ausgeben
    }
    else{
    bestaetigung und mail schicken}

    Kommentar


    • #3
      Ist das aber nicht fast das gleiche wie mit dem echo? weil hier wiederholt sich ja auch dann das if ganz oft und else nur einmal.... Weiß ja nicht ob es dann daran liegt das es die Mail nicht mehr abschickt...?

      Kommentar


      • #4
        Mhmm... wie schreib ich es das die Fehler ausgegeben werden?

        Mit echo $fehler[]; klappt es nicht....?

        Bin halt wirklich noch nicht so gut mit php....

        Kommentar


        • #5
          Ich habe eben Hans ein Beispiel zu diesem Thema gemacht.
          Gruss
          L

          Kommentar


          • #6
            Auf jeden Fall eine gute Möglichkeit, aber würde trotzdem gern wissen, was ich hinschreiben muss, um meine Fehlermeldung auszugeben...? Dürfte ja eigentlich nur eine Zeile sein?

            Kommentar


            • #7
              Du meinst die im Beispiel von HPR1974. Da es ja mehrere Meldungen sein können, ist das ja ein Array, und den musst du natürlich entsprechende ausgeben, z.B.
              PHP-Code:
              foreach ($fehler as $msg){
                  echo 
              "$msg<br />";

              Aber das sind eigentlich Grundlagen, die man sich zuerst aneignen sollte
              Gruss
              L

              Kommentar


              • #8
                dankeschön! mhmm ja ich eigne mir das dann an wenn ich es brauche, so wie jetzt Hab mich jetzt auch noch nie soo sehr mit php beschäftigt.

                Es klappt auch

                Liebe Grüße Denise

                Kommentar


                • #9
                  könntest es auch mit else if machen... dann brauchst du keinen fehelrcounter mitzählen lassen...
                  Under Construktion

                  Kommentar


                  • #10
                    Zitat von Hu5eL Beitrag anzeigen
                    könntest es auch mit else if machen...
                    Wenn schon, dann mit elseif
                    Gruss
                    L

                    Kommentar


                    • #11
                      Das hatte ich auch schon, aber meines Wissens nach ging es damit auch nicht. Aber ich werde es mal noch so probieren, weil jetz eine andere Fehlermeldung kommt... Ich hab ja ein Formular mit Dateianhängen, und
                      da ist eine Zeile: $Dateiinhalt = fread(fopen($_FILES['Anhang']['tmp_name'], "r"), $_FILES['Anhang']['size']);

                      Und wenn ich jetzt keine Datei anhänge kommt die Fehlermeldung:

                      Warning: fread(): supplied argument is not a valid stream resource in /www/htdocs/w0091088/taschenk.php on line 106

                      und vorher gings aber....??

                      edit: mit elseif geht es allerdings nicht, weil dann nur ein fehler ausgegeben wird...

                      Kommentar

                      Lädt...
                      X