wiederholte eingabebereiche prüfen

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

  • wiederholte eingabebereiche prüfen

    Hallo Leute,

    ich habe hier eine Frage an Euch.
    Ich habe ein ganz normal Formular mit einer überprüfung auf Eingabe. Nun möchte ich das der User mehrere Anmeldungen auf einen rutsch abschicken kann. Das heißt die eine Zeile öfter darstellen und natürlich jede Zeile auf eingabe prüfen. Wenn also eine Anmeldung angefangen wird muß sie auch beendet werden. Werden jedoch nur z.B. 2 Anmeldungen ausgefüllt soll diese auch weggeschickt werden.
    Ich hoffe ich konnte es einigermaßer erklären.
    Auf Hilfe würde ich mich sehr freuen.

    Danke Gruß Alex

    <html>
    <head>
    <title>Anmeldung</title>
    <script type="text/javascript">
    function chkFormular () {
    if(document.anmeldung.geschlecht.value == "0")
    {
    alert("Bitte geben Sie Ihr Geschlecht an!");
    document.anmeldung.geschlecht.focus();
    return false;
    }
    if (document.anmeldung.vname.value == "") {
    alert("Bitte geben Sie Ihren Vornamen ein!");
    document.anmeldung.vname.focus();
    return false;
    }
    if (document.anmeldung.nname.value == "") {
    alert("Bitte geben Sie Ihren Nachnamen ein!");
    document.anmeldung.nname.focus();
    return false;
    }
    if (document.anmeldung.klasse.value == "") {
    alert("Bitte geben Sie Ihre Klasse an!");
    document.anmeldung.klasse.focus();
    return false;
    }
    res = true

    if(document.anmeldung.Zahlmethode[0].checked == false && document.anmeldung.Zahlmethode[1].checked == false)
    {res = false;}

    if(res == false){alert('Bitte Radiobutton ausfüllen!')}
    return res;

    }
    </script>
    </head>
    <body>

    <h1>Anmeldung</h1>

    <form name="anmeldung" action="formailer.php" method="post" onsubmit="return chkFormular()">
    <p>
    <select name="geschlecht">
    <option value="0"></option>
    <option value="1">Frau</option>
    <option value="2">Herr</option>
    </select>
    Name: <input name="vname" type="text" size="20" maxlength="40" tabindex="1">
    Nachname: <input name="nname" type="text" size="20" maxlength="40" tabindex="2">
    Klasse: <input name="klasse" type="text" size="20" maxlength="40" tabindex="3">
    <input type="radio" name="Zahlmethode" value="ja" tabindex="4"> Mastercard
    <input type="radio" name="Zahlmethode" value="nein" tabindex="5"> Visa
    <br>
    <br>
    <br>
    email:<input name="email" type="text" id="email" size="40" maxlength="40">
    <br>
    <br>
    <br>
    <textarea name="nachricht" cols="40" rows="5" wrap="PHYSICAL" id="nachricht"></textarea>

    <br>
    </p>
    <input type="submit" tabindex="6" value="Abschicken">
    </form>
    </body>

  • #2
    Erklär das mit dem mehrfach abschicken bitte nochmal?
    wenn man auf den submit button klickt, wird an "formailer.php" gesendet.. ich nehem an, das is ne datei, die die eingaben verarbeitet?
    was soll dann passieren? soll dann wieder das formular angezeigt werden?
    PHP Forum
    Sessions in PHP
    Loginsystem mit PHP erstellen

    Kommentar


    • #3
      Hallo Hamster,

      in der Formailer.php wird eigentlich nur eine Email an den Admin gesendet. Ich möchte das der User die möglichkeit hat 10 Personen mit einem Submit anzumelden. Also 10 mal :
      Name: <input name="vname" type="text" size="20" maxlength="40" tabindex="1">
      Nachname: <input name="nname" type="text" size="20" maxlength="40" tabindex="2">
      Klasse: <input name="klasse" type="text" size="20" maxlength="40" tabindex="3">
      <input type="radio" name="Zahlmethode" value="ja" tabindex="4"> Mastercard
      <input type="radio" name="Zahlmethode" value="nein" tabindex="5"> Visa

      Nun möchte ich das Formular natürlich auf Eingabe Überprüfen. Dies ist ja bei der ersten Zeile kein Problem. Aber dann.
      Hier das Beispiel
      http://www.glaszuglas.de/Peter/anmeldung.php

      Kommentar


      • #4
        Nabend,

        Du musst aus den Eingabefeldern Arrays machen, da sonst die Inhalte der Felder von einem (ich vermute dem letzten) überschrieben werden.

        Gruß Thomas

        Kommentar


        • #5
          jap, nur kann man die felder dann nicht mehr mit javascript prüfen, weil keine '[ ]' als name akzeptiert werden.
          Ich hatte mal nen ähnliches prob mit checkboxen. ich hab jeder checkbox eine eigene ID gegeben und diese dann per javascript geprüft.

          ganz so einfach funktioniert das sowieso nicht, weil du, wenn du jedes feld überprüfst, voraussetzt, dass jeder User auch 10 personen anmelden will.

          also müsstest du entweder vorher eine bestimmte anzahl eingeben lassen un aufgrund der eingabe ein formular erstellen lassen, oder noch zusätzlich eine spalte mit checkboxen erstellen, sodass jeder Eintrag durch das aktivieren der Checkbox validiert wird. In der Javascript-Funktion müsstest du dann eben erst prüfen, ob die jeweilige Checkbox aktiviert wurde und dann, falls notwendig die Eingaben prüfen.

          Hab mir auch mal ne entsprechende funktion gebastelt, aba hab grade kA wo das teil liegt

          Naja, is au schon spät ^^ hoffe ich konnte dir helfen, wenns gar nich funzt schau ich mal, ob ich mein teil noch finde
          PHP Forum
          Sessions in PHP
          Loginsystem mit PHP erstellen

          Kommentar


          • #6
            Hi
            Danke für eure Antworten.
            Es ist genau so wie Hamster es beschrieben hat.
            Ich bin schon am überlegen ob ich meinen Kollegen nicht frage ob er nicht jede Person einzeln Anmelden kann, wenn da der ergeiz nicht wär!!!
            Ich bleib auf jedenfall dran.

            Kommentar


            • #7
              Hi,

              Mit Javascript validieren ist eh mist, das sollte nur PHP seitig gemacht werden.

              "ganz so einfach funktioniert das sowieso nicht, weil du, wenn du jedes feld überprüfst, voraussetzt, dass jeder User auch 10 personen anmelden will."
              Die Lösung ist doch naheliegend: Sind alle Felder einer Zeile leer, so brauch er sie nicht zu beachten.

              Gruß Thomas

              Kommentar


              • #8
                Original geschrieben von Hirnhamster
                jap, nur kann man die felder dann nicht mehr mit javascript prüfen, weil keine '[ ]' als name akzeptiert werden.
                Blödsinn.

                http://de.selfhtml.org/javascript/ob...tm#allgemeines
                I don't believe in rebirth. Actually, I never did in my whole lives.

                Kommentar


                • #9
                  @ alrik
                  aba java script is schneller..
                  also ich machs eh immer doppelt, weil es irgendwie blöd is, wenn man alles ausfüllt und abschickt und nen Fehler bekommt, dass man 1 Feld vergessen hat un alle eingaben neu machen muss.

                  @ wahsaga
                  Ahh stimmt, hab ich damals nich richtig geprüft..
                  Hatte nur probiert, jedem element den Namen 'name=name[]' zu geben und das gab nen fehler, un in nem Forum hab ich dann gelesen, dass das nich geht (wenn nötig such ich noma nach dem Forum..).
                  Jedenfalls hab ichs dann mittels ner Zählerschleife und über ne id gemacht, also
                  for ($i=0 ;$i<10;$ i++)
                  ..'id=name'.$i.' name=namen[]'..
                  un das hat funktioniert.. bin dann einfach davon ausgegangen, dass es am [] lag..
                  PHP Forum
                  Sessions in PHP
                  Loginsystem mit PHP erstellen

                  Kommentar


                  • #10
                    aber Javascript kann man ausschalten
                    und man müsste name="name[]" schreiben

                    Kommentar


                    • #11
                      Wo ist das Problem, die Werte wieder ins Formular einzutragen durch PHP? Dafür brauch ich kein JS um das erneute Eingeben zu verhindern.
                      Und das Javascript schneller ist bezweifel ich, der Unterschied wird da ziemlich genau +-0 Sekunden beim validieren betragen.
                      Undauf die Validierung von Userseite aus zu vertrauen ist genauso, als würdest du garicht validieren.

                      Kommentar


                      • #12
                        klick auf submit un reload der seite is aba ganz bestimmt langsamer als ein windows error, da brauch ma nich wirklich zu diskutieren.. daten zum webserver senden dauert auf jeden fall länger als sie vom browser per javascript prüfen zu lassen
                        PHP Forum
                        Sessions in PHP
                        Loginsystem mit PHP erstellen

                        Kommentar


                        • #13
                          Es ist ein Unterschied zu sagen, dass Javascript schneller ist als PHP, oder ob ich sage, dass die Datenübertragung für Wartezeit sorgt.
                          Und dass du dadurch nichts gewonnen hast, muss auch nicht diskutiert werden, s.o.

                          Kommentar


                          • #14
                            Original geschrieben von Alrik
                            Es ist ein Unterschied zu sagen, dass Javascript schneller ist als PHP, oder ob ich sage, dass die Datenübertragung für Wartezeit sorgt.
                            ...
                            PHP validiert aber erst NACH dem Absenden
                            Javascipt validiert DAVOR
                            nur wenn die OnSubmit-Bedingung erfüllt wurde, wird das Formular überhaupt gesendet

                            Fazit: Bei Java gibt es bei fehlenden Eingaben gar keine Übertragung, bei PHP auf jeden Fall, da erst dann validiert werden kann. Ergo liefert Javascript im Fehlerfall schneller einen Error.

                            Natürlich ist das schlagende Argument bezüglich der Geschwindigkeit in diesem Fall der Datenübertragungsaspekt und dabei ist Java schneller
                            PHP Forum
                            Sessions in PHP
                            Loginsystem mit PHP erstellen

                            Kommentar


                            • #15
                              bei javascript:document.forms.anmeldung.submit(); in der Eingabezeile gibt wird es abgeschickt.

                              Wenn Javascript ausgeschalten ist wird das Formular ebenfalls abgeschickt.

                              Du solltest mit PHP das Formular auf jeden Fall überprüfen!
                              Ob du es auch noch mit Javascript machen möchtest damit es der Benutzer bequemer hat kannst du ja dann entscheiden, aber Javascript-validierung bringt nicht wirklich was.

                              Kommentar

                              Lädt...
                              X