Eingabe Formular kontrollieren & absenden

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

  • Eingabe Formular kontrollieren & absenden

    Hallo zusammen,

    ich bringe mir gerade php bei und habe ein kleines eingabeformular erzeugt (eingabe.php)

    dort klicke ich auf "Mitteilung kontrollieren" und eine Seite wird aufgerufen, die genauso aussieht, lediglich ohne textfelder. Er übergibt einfach nur die Daten. Soweit ok.

    Ich tue mich noch sehr schwer mit der übernahme von anderen Beiträgen (Siehe Frage soundso) wäre also super wenn wir hier zusammen auf mich eindräschen ähhhh eingehen könnten.

    mein problem: ich möchte das das formular solange aufgerufen wird, bis in allen feldern etwas drin steht, wenn etwas fehlt soll oben drüber stehen "Bitte Eingabe konntrolieren" und bsp. (wenn dort was fehlt) Name soll dann rot und fett erscheinen. wenn überall was drinsteht, soll er zur check.php wechseln um nochmal zu kontrollieren. dann will ich das zeug per mail an mich abschicken, wenn alles korrekt ist. wenn nicht, will ich über den knopf "Korrigieren" zu meinem ausgefüllten formular zurück.

    meint ihr wir bekommen das hin?

    hier meine codes:

    neue codes stehen unten
    Zuletzt geändert von firebirder; 21.08.2003, 08:50.
    http://www.nanc-angel.de

  • #2
    am besten schaust du dir mal dieses tutorial an:
    http://www.php-resource.de/tutorials/read/5/1/

    besonders der teil über "bedingungen (if)" wird dich begeistern.
    Kissolino.com

    Kommentar


    • #3
      das habe ich mi9r durchgelesen, verstehe auch wie das beispiel dort aufgebaut ist, aber ich bekomme es nicht hin soetwas bei mir einzusetzten. könnte ihr mir nicht an meinem beispiel nur bei "Name" zeigen was ich das ändern muß, damit ich die rote schrift bekomme?

      bitte helft mir doch, ich bin nunmal Anfänger.

      Daniel
      http://www.nanc-angel.de

      Kommentar


      • #4
        PHP-Code:
        // name nicht ausgefüllt
        if(empty($_POST['input2']))
        {
          echo 
        "Name fehlt";
        }

        // Name soll mindestens 3 zeichen lang sein
        if(strlen($_POST['input2']) < 3)
        {
          echo 
        "Name zu kurz";

        das solltest du im manual mal nachschlagen:
        if, else, elseif
        empty(), isset()

        du kannst auch eine variable innerhalb der bedingung belegen:
        PHP-Code:
        $error 0// nur 1x definieren
        // name nicht ausgefüllt
        if(empty($_POST['input2']))
        {
          
        $error 1;

        für den submit button definierst du eine neue bedingung
        PHP-Code:
        if($error == 0)
        {
          echo 
        "<input type=\\"SUBMIT\\" value=\\"Absenden\\">";

        ist ein fehler aufgetreten wird erhält $error den wert 1 sonst bleibt es 0.
        nur wenn $error auch 0 ist, wird der submit-button ausgegeben.

        zudem solltest du auf der check-seite alle übergebenen variablen aus dem
        ersten formular in hidden-fields packen. sonst kannst du vollständige formulare
        nicht weiter verarbeiten.

        ansonsten schau auch mal bei http://www.schattenbaum.net/php vorbei. gerade
        für anfänger gibt es dort tolle tutorials, die den einstieg erleichtern.
        Kissolino.com

        Kommentar


        • #5
          hi,

          ich bekomme das nicht hin. habe mir auch die schattenbaum phps durchgelesen, waren auch verständlich an den beispielen. doch an meinem scheitert es wieder. ich weiß nicht mehr was ich machen soll.
          Dabei war es schon so eine arbeit den Kram mit Frontpage so hinzubasteln.

          Ich lasse es jetzt wohl

          bis irgentwann mal und danke noochmal für eure bisherige hilfe...Daniel
          http://www.nanc-angel.de

          Kommentar


          • #6
            nein,

            ich gebe noch nicht auf,

            ich habe es geschafft das name rot ist auf check.php wenn nichts eingegeben wurde. wie bekomme ich es jetzt hin, das ich zu meinem formular zurückkomme, wenn ich auf korrigieren klicke.?
            jetzt sehen sie teile so aus:

            eingabe.php
            PHP-Code:
            <html>
            <
            head>
            </
            head>
            <
            body>
            <
            FORM name="form" action="check.php" method="POST">

            Anrede: <br>
            Herr<input type="radio" name="input1" value="Herr" checked><br>
            Frau <input type="radio" name="input1" value="Frau"><br>
            Name: <INPUT NAME="input2" VALUE="Max Mustermann" SIZE=35>
            <
            br>
            E-Mail: <INPUT NAME="input3" VALUE="max@123.de" SIZE=35><br>
            PLZOrt: <INPUT NAME="input4" VALUE="12345" SIZE=10><INPUT NAME="input5" VALUE="Musterstadt" SIZE=21><br>
            Nachricht: <textarea rows="2" name="input6" cols="20">Das ist der Nachrichtentext.</textarea><br>

            <
            input type="SUBMIT" value="Absenden"><input type="RESET" value="L&ouml;schen">
            </
            form>
             </
            body>
            </
            html
            check.php
            PHP-Code:
            <html>
            <head>
            </head>
            <body>
            <input type="HIDDEN" value="$input1">
            <input type="HIDDEN" value="$input2">
            <input type="HIDDEN" value="$input3">
            <input type="HIDDEN" value="$input4">
            <input type="HIDDEN" value="$input5">
            <input type="HIDDEn" value="$input6">

            Anrede: <? echo $input1; ?><br>
            <!--Name Bedingung-->
            <?
             if(empty($_POST['input2']))
            {
              echo "<font color=\"#FF0000\"><b>Name:</b></font>";
            }
            else
            {
              echo "Name:";
            }
             ?> <? echo $input2; ?><br>
            <!--Name ende-->
            E-Mail: <? echo $input3; ?><br>
            PLZ, Ort: <? echo $input4," ",$input5; ?><br>
            Nachricht: <? echo $input6; ?><br>

            <input type="SUBMIT" value="Korrigieren">&nbsp;&nbsp;&nbsp;&nbsp;<input type="Submit" value="Absenden">
             </body>
            </html>
            Zuletzt geändert von firebirder; 21.08.2003, 10:11.
            http://www.nanc-angel.de

            Kommentar


            • #7
              Original geschrieben von firebirder
              wie bekomme ich es jetzt hin, das ich zu meinem formular zurückkomme, wenn ich auf korrigieren klicke.?
              verzichte auf den "korrigieren"-link, und gib das formular im gleichen script erneut aus, wobei du die bisher eingegebenen werte ins value-attribut der jeweiligen felder hineinschreibst.
              I don't believe in rebirth. Actually, I never did in my whole lives.

              Kommentar

              Lädt...
              X