HTML Kombinieren von zwei <form> möglich ?

Dasun

Lieutenant
Registriert
Aug. 2012
Beiträge
847
Hallo Allerseits,

ich sitze hier gerade an einem Projekt und komme nicht weiter.

Ich habe ein Formular in HTML (PHP) kreiert und möchte, das mit einem klicken auf den Absendebutton dei Daten via Post an ein PHP-Skript gesendet werden.

Der Absendebutton ebenso wie eine Inputbos (für den Namen) befinden sich im Bereich links auf der Seite. Das Formular ist in der Mitte der Seite.

Da sich Links nach dem Absende-Button und der Textbox noch einigen andere Elemente (Insertlist mit vorhandenen Profilen) befinden, die nix mit dem Formular zu tun haben, dachte ich mir, dass es besser ist, mit zwei <form> zu arbeiten, eins für das Formular und eines für die Textbox und den Absendebutton.


Deswegen meine Frage:

Gibt es eine Möglichkeit beide <form> miteinander zu verknüpfen oder eine andere elegante Lösung, auf die ich noch nicht gekommen bin ?

Gruß Sebastian
 
Nicht, dass ich wüsste. Dafür müssten beide Formulare ja identische name/id haben, was unzulässig ist.

Aber lös es doch über JavaScript.
 
Wie wäre es wenn du nur ein Form Feld nimmst und später bei der Übergabe der Werte einfach prüfst welche Felder ausgefüllt wurden?

PHP:
if (!empty($_POST["Formular"])) {
    echo "Das Formular wurde ausgefüllt";    
}else{  
    echo "N0, mail is not set";
   if (!empty($_POST["Name"])) {
    echo "Das Namensformular wurde ausgefüllt";    
}
}[

Musst dann nur abfangen falls jemand beide Formulare parallel ausgefüllt hat.
 
Danke für eure Hilfe,

ich hab nun ne Lösung dafür gefunden.
 
...die du nicht mit der Welt teilst. Könnt ja jemand Mal dasselbe Problem haben...
 
In HTML5 gibt es das form-Attribut dazu.
 
Hm, den Teil von HTML5 hab ich noch gar nicht ausprobiert. Nett... Und ich einen JS-Fallback für ältere Browser zu schreiben sollte leicht sein. Sinngemäß:
- lies das Form-Attribut jedes Buttons auf er Seite
- binde einen Onclick-Handler, der das Formular mit der ID des Button-Attributs absendet
Mit Mootools oder jQuery vielleicht 5-6 Zeilen
 
Zurück
Oben