Kontaktformular

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

  • #16
    Hallo TobiaZ,

    das verstehe ich nicht ganz. Für mich erscheint die Version mit elseif genau so zu funktionieren wie meine Version.

    Wo liegt der Unterschied?

    Kommentar


    • #17
      Den Unterschied habe ich bereits genannt. Der Effekt des Arrays ist dahin.

      Warum hast du ein Error-Array genutzt? Na, um alle Fehler auf einmal anzuzeigen.

      Jetzt nehmen wir folgendes simples Beispiel:
      PHP-Code:
      <?php

      $erster_fehler 
      true;
      $zweiter_fehler true;
      $error = array();

      if(
      $erster_fehler)
          
      $error[] = 'eins';
      elseif(
      $zweiter_fehler)
          
      $error[] = 'zwei';
      else
          echo 
      'kein Fehler';
          
      print_r($error);

      ?>
      Prüf es selbst nach, wie viele Elemente wird $error maximal haben? richtig, eines. Nämlich das des ersten Fehlers.

      Kannst die Struktur beliebig erweitern, $error wird immer maximal den ersten aufgetretenen Fehler anzeigen.

      Wozu also ein Array? Da kannst du gleich $error = 'Fehlermeldung'; verwenden. Und auf das Array, und somit die Möglichkeit, alle Fehler auf einmal anzuzeigen, verzichten.

      Kommentar


      • #18
        Verstehe! Danke für deine genaue Erklärung.

        Aber in meinem Script prüfe ich doch jeweils erst ob das Feld leer ist. Anschliessend folgt mit elseif die RegEx-Prüfung.

        Sofern das Feld leer ist, erfolgt eine entsprechende Fehlermeldung. Die RegEx-Prüfung ist ja dann überflüssig. Von daher ist das mit elseif ja so gewollt.

        Anschliessend geht es ja wieder neu mit einem if-Konstrukt los.

        Kommentar


        • #19
          Aso, okay. dann geht's natürlich.

          Wobei ich unter diesen Umständen das noch kürzere

          if($erster_fehler || $zweiter_fehler)
          $error[] = 'feld eins ist fehlerhaft.';

          bevorzuge.

          Kommentar


          • #20
            Das ist natürlich wirklich schön kurz.

            Ich werde das Script nun mal überarbeiten.

            Vielen Dank schon mal für die Hilfe und Tipps.

            Kommentar

            Lädt...
            X