im Formualr fehlerhaftes Feld markieren

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

  • im Formualr fehlerhaftes Feld markieren

    hallo
    ich bin dabei mein erstes Kontaktformualr zu erstellen mit folgendem Code (Auszug):
    PHP-Code:
    <?php
    if (isset ($_POST['submit']))
    {  
    //Auslesen der Variablen
    $name=ucwords (strtolower($_POST['name']));      
    $submit=($_POST['submit']); 

    //Fehlerprüfung einfach    
    if (empty($name))
    {
    $hack=true;}       

    //Fehlermeldung ausgeben, wenn
    if (($hack)=='true')

    echo 
    '<p style="color:#FF0000">Leider konnten wir Ihre Daten nicht verarbeiten.<br>
    Bitte überprüfen Sie Ihre Angaben in den markierten Feldern<b></p>'
    ;
    }   
    }  

    //Bestätigung bei korrekter Eingabe
    if (isset ($_POST['submit']))

    if ((
    $hack)!='true')
    {
    echo 
    '<p>Vielen Dank f&uuml;r Ihre Anfrage.</p>';

    }
    ?>
    Mein Formular sind so aus:
    Code:
    <form action="<?php echo $_SERVER['PHP_SELF']?>" method="post"> 
    <table width="500" height="250" > 
    <tbody>
    <tr>
      <td>Name</td>
      <td><input type="text" name="name" size="40" value="<?php echo $name;?>"></td>
    </tr>
    
    <tr>
      <td> </td>
      <td><input type="submit" name="submit" value="Senden"></td>
    </tr>
    </tbody>
    </table> 
    </form>
    Soweit klappt ja auch alles, aber wie kann ich nun eine Markierung der falsch ausgefüllten Felder (z.B. mit *) im Formular erzeugen?

    Es müsste doch mit einer if Abfrage im Formularfeld gehen, aber wie?

  • #2
    Na, z.B.

    PHP-Code:
    <td>Name<?php if ($hack) echo ' *'?></td>

    Kommentar


    • #3
      Danke für die Antwort.
      Mit dem Code habe ich dann zwar das Feld markiert, aber wenn es danach richtig ausgefüllt wird und submit gedrückt wird, bleibt mein * auch bestehen, was natürlich nicht sinnvoll ist.
      Und nun?

      Kommentar


      • #4
        Hm ... versuch mal so:
        PHP-Code:
        // set default
        $hack false;
        //Fehlerprüfung einfach    
        if (empty($name))
        {
        $hack=true;} 

        Kommentar


        • #5
          Leider ist der Effekt der Selbe:
          1. Versuch: Feld leer, submit -> * wird angezeigt
          2. Versuch: nun wird das Feld ausgefüllt, submit -> * bleibt

          Müsste ich vielleicht nochmals die Bedingung aufführen:
          PHP-Code:
          if (isset ($_POST['submit'])&&(empty($name))) { 
          echo
          '*';}
          else {
          echo
          '&nbsp;';} 

          Kommentar


          • #6
            probieren über studieren, mit dem wenigen Code von dir kann ich nicht viel dazu sagen
            EDIT:

            - sind die o.a. Codeteile in einer Datei?
            - die Meldung "Leider konnten wir Ihre ..." erscheint auf jeden Fall?

            Zuletzt geändert von asp2php; 11.10.2004, 10:49.

            Kommentar


            • #7
              Zu Deiner Frage, ja alles ist in einer Datei.

              Habe es jetzt mit dem Wiederholen der Pürfung probiert, und nun klappt es, dass das Zeichen nur erscheint, wenn das Feld leer ist und wieder verschwindet, wenn man es ausgefüllt hat.
              Ebenso erscheint die Fehlermeldung nur bei einem leeren Feld.

              Danke für Deine Mithilfe
              Tina

              Kommentar

              Lädt...
              X