fehlermeldung neben eingabefeld

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

  • fehlermeldung neben eingabefeld

    moin,habe nix im forum gefunden drum frag ich :
    habe sagen wir mal 4 textfelder wo name,nachname,email,password reinkommen.sobald abgeschickt wird wir gecheckt ob alles ausgefüllt wurde.nu will ich aber das falls was falsch ist genau neben dem textfeld die fehlermeldung kommt.bei einem kein problem,da reichts wenn ma die z.B.
    PHP-Code:
     if(isset($_POST['Name'])){
    if(
    $_POST['Name'] != ''){
    mysql...blabla}else{echo "Kein Name eingegeben";}

    abfrage direkt neben dem textfeld Name einbaut.aber wie bei mehreren ?
    mfg
    thx
    Zuletzt geändert von vizor; 18.10.2005, 09:18.

  • #2
    PHP-Code:
    $temp array_keys($_POST,''); 
    Dieser Kleinstschnippel gibt die alle Indecies des Arrays POST zurück welche keine Werte übertragen haben.
    Durch diesen Array mit nem switch oder foreach durch.
    PHP-Code:
    $email 'Sie haben keine Email angegeben';
    $name 'Sie haben keinen Namen angegeben';
    $fehler false;
    foreach(
    $temp as $wert){
        if(
    $wert == 'email'){ // Falls das Feld 'email' heisst
            
    $fehler true;
        }
        elseif(
    $wert == 'name'){ // Falls das Feld 'name' heisst
            
    $fehler true;
       }
    [...]
    }
    if(
    $fehler == true){
       
    /*Das Form wurde nicht komplett ausgefüllt. Nochmals ausgeben 
       und neben die jeweiligen Felder die entsprechenden Vars eintragen
    */
    }
    else{
        
    //Form kann verarbeitet werden. Alles ausgefüllt

    So mache ich as immer wenn ich Forms prüfen muss, die viele Felder enthalten.

    Gruss

    tobi
    Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

    [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
    Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

    Kommentar


    • #3
      Re: fehlermeldung neben eingabefeld

      Wo liegt das Problem?
      Du kannst ganz genauso die Abfrage angepasst neben jedes Formularfeld schreiben - das wäre die banale Lösung.

      Oder du fragst erst mal alle auf einmal ab, in einer Schleife beispielsweise. Wenn was falsch ist, musst du dir die Fehlermeldung merken - z.b. in einem Array, und als Key könntest du den Feldnamen verwenden (sofern eindeutig).

      Bei der Ausgabe der Formularfelder fragst du dann jeweils ab, ob es im Fehler-Array einen Eintrag passenden zum Feldnamen gibt, und gibst ihn aus.

      Gibt sicher noch andere Möglichkeiten/Variationen - aber wenn du noch Probleme hast, solltest du erst mal konkreter werden, wobei genau.
      I don't believe in rebirth. Actually, I never did in my whole lives.

      Kommentar


      • #4
        naja wenn ich jede abfrage einzeln neben die felder mache und z.B. beim 2ten feld etwas fehlt soll er ja auch das script abbrechen,die meldung dann halt anzeigen neben dem leeren feld aber das formular ganz anzeigen.wenn ich jetzt da abbreche mit exit; läd er ja auch den rest nichtmehr.habe jetzt die; noch nicht getestet,aber könnte das gehen ? oder stoppt er da auch alles ?
        also so z.b.
        PHP-Code:
        <?php include ("kopf.php");?>
        <input type=text name="Name"><?php if(isset($_POST['Name']) AND $_POST['Name'] == ''){
        echo 
        "Kein Name";die;
        include (
        "fuss.php");?>
        (ist jetzt eben schnell ausm kopf geschrieben,können fehler drin sein)
        würde er nun noch die fuss includen ?
        Zuletzt geändert von vizor; 18.10.2005, 13:59.

        Kommentar


        • #5
          Die Möglichkeiten sind zahlreich ... nur dir fällt mal wieder keine ein

          [...] die meldung dann halt anzeigen neben dem leeren feld aber das formular ganz anzeigen.wenn ich jetzt da abbreche mit exit; läd er ja auch den rest nichtmehr.
          Möglichkeiten:

          - prüfe alles vorher, wie ich vorschlug. Sobald ein oder mehrere Fehler aufgetreten sind, werden die übergeben Daten nicht weiter verarbeitet. Meldungen dann neben den einzelnen Feldern ausgeben wie beschrieben.
          - beim prüfen "neben jedem Feld" im Fehlerfalle ein Flag setzen. Ist dieses am Ende gesetzt, trat mindestens ein Fehler auf - Daten nicht verarbeiten
          - ...
          I don't believe in rebirth. Actually, I never did in my whole lives.

          Kommentar

          Lädt...
          X