+ Antworten
Ergebnis 1 bis 5 von 5

Thema: Formulareingabe / Fehleranzeige mittels PHP

  1. #1
    TP-Senior Pixelmaster macht alles soweit korrekt
    Registriert seit
    Dec 2002
    Ort
    Langenthal
    Beiträge
    182

    Formulareingabe / Fehleranzeige mittels PHP

    Hallo,
    wie kann man folgendes Problem mit PHP lösen: Ich habe in einem Formular Eingabefelder wie "Name", "Vorname" etc..Beim Eingabefeld "Name" wird nichts eingegeben und folgedessen sollte sich der Bezeichner "Name" vor dem Eingabefeld z.B. rot färben, damit der User weiss, da hab ich noch nichts eingegeben.
    Ich habe dies mal versucht, aber konnte diesen Effekt nicht umsetzen. Untenstehend ein Codeschnipsel betreffend Eingabefeld sowie dem PHP-Code:

    Codeschnipsel Eingabefeld:

    <table align="center" cellpadding="5" cellspacing="0" border="1" >
    <tr>
    <td <?php echo $fehl; ?>> Name:</td>
    <td> <input type="text" name="name"
    value="<?php if(isset($_POST['name'])){echo $_POST['name'];}?>"
    size="" maxlength=""></td>
    </tr>

    Codeschnipsel PHP:

    <?php
    //Name
    if (isset($_POST['name']) && !empty($_POST['name']))
    {
    echo "Mit Name: ".ucfirst($_POST['name'])."<br>";
    }
    else
    {
    $fehl = "style=\"color:red;\"";
    }

    Im Weiteren sollte nach Eingabe des Feldes "Name", dann die Feldbezeichnung wieder in schwarz erscheinen, da es nun ausgefüllt worden ist. Ich denke, dass es am Link von $fehl happert, aber bin mir nicht sicher?!?

    Danke für jegliche Tipps!!!

  2. #2
    TP-Greis Boris lebt für das TP und seine User Boris lebt für das TP und seine User Boris lebt für das TP und seine User Boris lebt für das TP und seine User Boris lebt für das TP und seine User Boris lebt für das TP und seine User Boris lebt für das TP und seine User Avatar von Boris
    Registriert seit
    Mar 2001
    Ort
    Stuttgart & Kornwestheim
    Beiträge
    9.420
    Du solltest alle "falschen" Felder in einem Array speichern, sprich:

    ...
    $fehler[]='email';
    ...
    $fehler[]='name';
    ...
    $fehler[]='wasauchimmer';

    Und dann pro Input mit if checken, ob das passende Feld (name, email, etc) enthalten ist und entsprechend deine Fehlermeldung oder Klasse für die rote Farbe ausgeben.
    My software never has bugs. It just develops random features ...

    » DevShack - die Website des freien Webentwicklers Boris

  3. #3
    TP-Senior Pixelmaster macht alles soweit korrekt
    Registriert seit
    Dec 2002
    Ort
    Langenthal
    Beiträge
    182
    Hallo Boris
    Wie baut man da aber den Array ein? Bin da nicht so ganz sicher wie dies ablaufen sollte, wenn Du mein Codeschnipsel anguckst.

  4. #4
    TP-Greis Boris lebt für das TP und seine User Boris lebt für das TP und seine User Boris lebt für das TP und seine User Boris lebt für das TP und seine User Boris lebt für das TP und seine User Boris lebt für das TP und seine User Boris lebt für das TP und seine User Avatar von Boris
    Registriert seit
    Mar 2001
    Ort
    Stuttgart & Kornwestheim
    Beiträge
    9.420
    Naja, du musst jedes Pflichtfeld, dass man ausfüllen muss, halt überprüfen, z.B.

    PHP-Code:
    if(empty($_POST['vorname']) OR $_POST['vorname'] == '' OR is_numeric($_POSTvor_name]))
            
    $markerror[]    =    "vorname" 
    Das halt für jedes Feld, dass man ausfüllen muss.

    Wenn es keinen Fehler gab, dann existiert das Array $markerror nicht (if(isset($markerror)) und du kannst mit der Verarbeitung weiter machen.

    Ist es doch vorhanden, lässt du die Markierungen entsprechend ausgeben, z.B.

    PHP-Code:
    <td <?php if (array_key_exists('vorname'$markerror)) echo ' class="roterfehler"'?>><input type="text" name="vorname" value="" /></td>
    Ist das klarer?
    My software never has bugs. It just develops random features ...

    » DevShack - die Website des freien Webentwicklers Boris

  5. #5
    TP-Senior Pixelmaster macht alles soweit korrekt
    Registriert seit
    Dec 2002
    Ort
    Langenthal
    Beiträge
    182
    Hallo Boris,
    danke für die Hinweise, jetzt versuch ich mal diese "Marschrichtung". War mir nicht ganz im Klaren, wo man diese Teile montieren soll...

+ Antworten

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

     

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51