2 Submit Aktionen?
Kai Burkard
- html
Hallo,
ich habe gleich noch eine Frage weil vorhin das Thema aufgekommen ist. Ist es möglich für ein Formular 2 unterschiedliche Submit Aktionen vorzugeben? z.B. ein Submitknopf der es per E-Mail verschickt und dann ein Submitknopf der eine PHP aufruft um es in eine Datenbank einzutragen...
Für Vorschläge und Anregungen bin ich wie immer sehr verbunden ;-)
Gruß,
kai Burkard
Hi,
Ist es möglich für ein Formular 2 unterschiedliche Submit Aktionen vorzugeben?
nein. Das, was Du unter "Aktion" verstehst, muss von der einen (im action-Attribut referenzierten) serverseitigen Programmlogik gehandhabt werden. Insbesondere im Fall des eMail-Versandes ist die Serverseite ohnehin die um Längen bessere Wahl.
Cheatah
Hi,
Ist es möglich für ein Formular 2 unterschiedliche Submit Aktionen vorzugeben?
nein. Das, was Du unter "Aktion" verstehst, muss von der einen (im action-Attribut referenzierten) serverseitigen Programmlogik gehandhabt werden. Insbesondere im Fall des eMail-Versandes ist die Serverseite ohnehin die um Längen bessere Wahl.
der Attributwert 'action' der 'form' ist nach meiner Kenntnis aenderbar. (Funktioniert zumindest im IE ;-)
Gruss,
Lude
_DER_ABSOLUTE_JAVASCRIPT_BULLE_HIER_IM_FORUM_
Hi,
der Attributwert 'action' der 'form' ist nach meiner Kenntnis aenderbar. (Funktioniert zumindest im IE ;-)
wenn etwas funktionieren soll, _darf_ man sich nicht von JavaScript oder anderen clientseitigen Techniken abhängig machen.
Cheatah
Hi,
der Attributwert 'action' der 'form' ist nach meiner Kenntnis aenderbar. (Funktioniert zumindest im IE ;-)
wenn etwas funktionieren soll, _darf_ man sich nicht von JavaScript oder anderen clientseitigen Techniken abhängig machen.
<suelz> es gibt da eine Abstraktionsebene, die bereits die Darstellung von HTML-Code als clientseitige Technik verstehen wuerde.
</suelz> Du hattest mal erlaeutert, dass der optionale Einsatz von JavaScript gut ist, JavaScript aber dazu tendiert boese zu sein.
In diesem konkreten Fall waere also die beispielsweise von 'Eva' oder 'Lude' ins Auge gefasste Loesung keine wirkliche (empfehlenswerte) Loesung, weil die Abhaengigkeit von einer clientseitigen Technik gegeben waere.
Gruss,
Lude
wenn etwas funktionieren soll, _darf_ man sich nicht von JavaScript oder anderen clientseitigen Techniken abhängig machen.
Hi Cheatah
bin auch ein Fan von Serverseitig abgefangenen Problemen. So muß man nicht alle möglichen Client Ausprägungen berücksichtigen. Kann ganz schön nervig sein, wenn man fürs Internet programmiert. und man übersieht immer irgendeine Stolperfalle.
ch programmiere zum Glück im Intranet und weiß, welchen browser mit welchen Einstellungen die Benutzer haben. Da kann man dann schon mal auf Client techniken wie JavaScript zurückgreifen.
Eva
Hallo Kai,
Klar geht das. Gib als Submit Knopf nicht
<input type="submit">
an, sondern
<input type="button" onClick="mySubmit()">
und fülle die mySubmit() Funktion so:
function mySubmit()
{
getElementById('f').action = "seite3.php";
getElementById('f').method = "get";
getElementById('f').submit();
getElementById('f').action = "seite5.php";
getElementById('f').method = "post";
getElementById('f').submit();
}
wobei das einleitende form so aussieht:
<form id="f" action="seite2.php" method="post" target="_new">
Wichtig ist, daß Dein Formular ein neues Fenster öffnen muß, weil sonst die beiden Submits nicht nacheinander ausgeführt werden können.
Du kannst so beliebig viele verschiedene submits ausführen.
Grüße
Eva
Hallo,
Ist es möglich für ein Formular 2 unterschiedliche Submit Aktionen vorzugeben? z.B. ein Submitknopf der es per E-Mail verschickt und dann ein Submitknopf der eine PHP aufruft um es in eine Datenbank einzutragen...
Wie schon Cheatah schrieb, solltest Du beides serverseitig machen,
also auch den Mail-Versand.
Vergiss "Loesungen" mit JavaScript - die sind allesamt sehr unzuverlaessig.
Ein Formular kann in HTML nur _ein_ Ziel haben, an das die Daten geschickt werden.
Das kann z.B. ein PHP-Skript sein, das dann die gewuenschte(n) Aktion(en) ausfuehrt.
Fuer Dich duerfte dieser Punkt der dclp-FAQ interessant sein:
"Wie verarbeite ich mehrere Submit-Buttons?"
http://www.dclp-faq.de/q/q-formular-buttons.html
Alternativ zu zwei Submit-Buttons koenntest Du auch Checkboxen machen:
[ ] Mail verschicken
[ ] Eintrag in Datenbank
[Absenden-Button]
Das Skript soll reklamieren, wenn nichts angekreuzt ist, Stichwort "Affenformular":
http://www.dclp-faq.de/q/q-stil-normalform.html
Ob es wirklich dem Benutzer ueberlassen sein soll, was mit den Daten
geschieht, haengt natuerlich vom konkreten Anwendungsfall ab.
Wenn Du sowieso immer beides willst, mach einfach _einen_ Button,
und lass das PHP-Skript beides tun (DB-Eintrag, dann Mailversand).
Gruesse,
Thomas