Mailformular mit 2 actions
quitix
- html
Hi,
ist es möglich bei einem HTML-Mailformular 2 'actions' zu haben? Ich möchte, dass die eingegebenen Daten per E-Mail versandt werden und gleichzeitig eine Weiterleitung auf eine andere Seiter erfolgt.
<form id="id" method="post" action="http://quitix.de/mail.htm">
<form action="mailto:quitix@quitix.de" method="post" enctype="text/plain">
Also die beiden quasi zusammengefasst. Kann mir einer helfen?
Danke u Gruß,
quitix
Hi,
anzumerken sei, dass die Mail automatisch im Hintergrund versandt werden soll und der User halt auf die andere Seite weitergeleitet werden soll.
Danke u Gruß,
quitix
Hallöchen auch,
Nein, 2 actions sind nicht möglich!
ABER: Das Formular mit (dem einen) action wird zum Server geschickt, dort verarbeitet mit Mailversandt und danach bspw. über header() an eine Seite Deiner Wahl weitergeleitet.
MfG
cross
Hi,
danke. Geht es nicht auch mit JavaScript im Hintergrund auf der gleichen Seite die Mail mit den Daten zu versenden?
Danke u Gruß,
quitix
Hallöchen auch,
danke. Geht es nicht auch mit JavaScript im Hintergrund auf der gleichen Seite die Mail mit den Daten zu versenden?
Ja, grundsätzlich geht das. Aber aufgrund mangelhafter Kenntnisse verweise ich auf andere Kameraden hier, die sich da viel besser auskennen.
MfG
cross
hI,
oder ist es möglich ein Formular automatisch bei Dateiaufruf auszuführen bzw. abzusenden? Habs mal mit
<body onLoad="document.forms['form'].submit();">
probiert, aber es tut sich nichts.
quitix
Hallöchen auch,
Habs mal mit
<body onLoad="document.forms['form'].submit();">
probiert, aber es tut sich nichts.
Tut mir wirklich leid, aber ich kann Dir leider nicht helfen - habe zu wenig Ahnung von JS, um Dir darauf ne kompetente Antwort geben zu können.
MfG
cross
Irgendwie hab ich mein Posting wohl nicht abgesendet *grübel*
<form action="mailto:quitix@quitix.de" method="post" enctype="text/plain" onchange="window.location.href='deine_url'">
Probier es damit mal. Ich weiß nicht, ob onchange auf das Absenden eines Formulares reagiert.
Formulare kann man auf jeden Fall absenden ohne die Webpage zu verlassen - alles mit Javascript. Prototype hat dafür auch schöne Funktionen.
Mahlzeit PlayersGarden,
Ich weiß nicht, ob onchange auf das Absenden eines Formulares reagiert.
Natürlich nicht. Wieso sollte es? Dafür gibt es schließlich http://de.selfhtml.org/javascript/sprache/eventhandler.htm#onsubmit@title=onsubmit.
Prototype hat dafür auch schöne Funktionen.
Kanonen und Spatzen und so ...
MfG,
EKKi
Natürlich nicht. Wieso sollte es? Dafür gibt es schließlich http://de.selfhtml.org/javascript/sprache/eventhandler.htm#onsubmit@title=onsubmit.
Na wunderbar - du bist ein Held :D
»» Prototype hat dafür auch schöne Funktionen.
Kanonen und Spatzen und so ...
Ach Ekki ... weder du noch ich wissen den Umfang seines Projektes und da ist ein kleiner Tipp über den Tellerrand hinaus gar nicht schlecht.
Aber ich weiß - dat Forum war schon immer so und wird immer so bleiben... *kofpschüttel*
Mahlzeit PlayersGarden,
»» »» Prototype hat dafür auch schöne Funktionen.
»»
»» Kanonen und Spatzen und so ...Ach Ekki ... weder du noch ich wissen den Umfang seines Projektes und da ist ein kleiner Tipp über den Tellerrand hinaus gar nicht schlecht.
Das ist schon richtig. Deine Antwort suggerierte aber, dass er Prototype braucht, um Formulare per Javascript abzuschicken. Dabei ist es seinem vermutlichen Kenntnisstand nach zu urteilen IMHO erheblich sinnvoller, diese Kleinigkeit selbst einzubauen, um zu verstehen, wie es überhaupt funktioniert.
Dass es natürlich diverse Frameworks gibt, die Standard-Javascript um viele sinnvolle und auch weniger sinnvolle Funktionalitäten erweitern, und dass all diese auch zahlreiche Funktionen zum Manipulieren und Verarbeiten von Formularen zur Verfügung stellen, stimmt natürlich. Man braucht sie aber nicht dazu. Es geht auch "zu Fuß".
Aber ich weiß - dat Forum war schon immer so und wird immer so bleiben... *kofpschüttel*
Sicher. Und auch Du trägst auch Deinen Teil dazu bei ...
MfG,
EKKi
Das ganze mit onsubmit sollte funktionieren?
Werde es nachher mal ausprobieren.
Danke u Gruß,
quitix
Ich seh grad den Ausschnitt:
action="mailto:<foobar>"
Also wird da letztendlich ja nix zum Server geschickt und Header dürfte auch nicht greifen. Eventuell ein JS-Aufruf onchange oder so wo dann mit window.location.href = <url> weitergeleitet wird.
Wobei ich kein Fan von window.location.href - bei mir hats zum Beispiel im Browser den Bug, dass animierte Gif dann angehalten werden.
Wobei ich kein Fan von window.location.href - bei mir hats zum Beispiel im Browser den Bug, dass animierte Gif dann angehalten werden.
Das ist kein Bug, sondern kommt durch die fehlerhafte Verwendung von JS.
Struppi.
Das ist kein Bug, sondern kommt durch die fehlerhafte Verwendung von JS.
Wärst du auch noch so nett und würdest mir schreiben, was dabei fehlerhaft ist?
» Das ist kein Bug, sondern kommt durch die fehlerhafte Verwendung von JS.
Wärst du auch noch so nett und würdest mir schreiben, was dabei fehlerhaft ist?
Ich nehme an - da du ja nicht gesagt hast, wie du location.href verwendest - dass du dies in einem Link verwendest und dort im href Attribut anstatt im onclick Event, wo er sinnvollerweise angebracht wäre.
Struppi.
Ich nehme an - da du ja nicht gesagt hast, wie du location.href verwendest - dass du dies in einem Link verwendest und dort im href Attribut anstatt im onclick Event, wo er sinnvollerweise angebracht wäre.
Tjo - falsch angenommen.
Das Onclick-Event ruft eine Funktion auf, die zuerst ein animiertes Gif erscheinen läßt und danach wird window.location.href aufgerufen. Und da das sehr fix hintereinander passiert bleibt das animierte Gif schon beim ersten Frame stehen.
Anders ist es, wenn ich einen Link habe und dort im onclick-Event das animierte Gif erscheinen lasse.
Was sagste nun?
Das Onclick-Event ruft eine Funktion auf, die zuerst ein animiertes Gif erscheinen läßt und danach wird window.location.href aufgerufen. Und da das sehr fix hintereinander passiert bleibt das animierte Gif schon beim ersten Frame stehen.
Wo? Wenn du die Seite wechselst, verschwindet die Grafik.
Anders ist es, wenn ich einen Link habe und dort im onclick-Event das animierte Gif erscheinen lasse.
was immer das heißen mag.
Was sagste nun?
Das das was du erzählst konfus ist und keinen Sinn macht.
Struppi.
Deine Antwort finde ich nicht gut.
Also hier noch mal - eventuell liest du ja Quellcode besser als die deutsche Sprache :) - ich arbeite mit Prototype, ich hoffe das ist kein Problem für die Lesbarkeit.
Bug im Browser:
JS:
function loadNewPage(url){
$('animationGif').show();
window.location.href = url;
}
HTML irgendwo im Body:
<div onclick="loadNewPage('foo.php')">Hier gehts weiter!</div>
<img src="foobar.gif" id="animationGif" alt="" style="display:none;"/>
Animation die funktioniert - kein Bug:
JS:
function showAni(){
$('animationGif').show();
}
HTML irgendwo im Body:
<a href="foo.php" onclick="showAni()">Hier gehts weiter!</a>
<img src="foobar.gif" id="animationGif" alt="" style="display:none;"/>
Bei dem ersten Beispiel bleibt das Gif im ersten Frame stehen. Bei dem zweiten Beispiel läuft es munter vor sich hin, bis die page gewechselt wird.
Nun verstanden?
Bug im Browser:
JS:
[code lang=javascript]
function loadNewPage(url){
$('animationGif').show();
window.location.href = url;
Das ist kein Bug, sondern völlig normal, da du die Seite neu lädst.
Bei dem ersten Beispiel bleibt das Gif im ersten Frame stehen. Bei dem zweiten Beispiel läuft es munter vor sich hin, bis die page gewechselt wird.
Genau, das ist das Verhalten wie es sein soll, aber das ist kein Bug.
Struppi.
Aha ... verstehe ... it's a bug, not a feature.
Darum läuft es ohne windows.location.href im IE und FF weiter bis die neue Seite geladen wird und mit windows.location.href wird es zwar angezeigt, aber die Animation im ersten Frame gestoppt.
Dann kann ich windows.location.href also so verstehen:
Stoppe alles im Browser und mach so lange nichts, bis du genügend Daten von der nächsten Seite zum Anzeigen selbiger hast.
Hört sich für mich eher nach einem Bug an *lach*
Dann kann ich windows.location.href also so verstehen:
Stoppe alles im Browser und mach so lange nichts, bis du genügend Daten von der nächsten Seite zum Anzeigen selbiger hast.Hört sich für mich eher nach einem Bug an *lach*
Für mich hört sich das nach einem selbstverständlichen Verhalten an. Wenn du explizit wünscht, dass eine neue Seite kommt, ist es unerwünscht zu warten bis irgendwas auf der aktuellen Seite beendet wird.
Struppi.
Für mich hört sich das nach einem selbstverständlichen Verhalten an. Wenn du explizit wünscht, dass eine neue Seite kommt, ist es unerwünscht zu warten bis irgendwas auf der aktuellen Seite beendet wird.
Dir ist schon klar, dass ein Bild - egal ob es animiert ist oder nicht, keinen Browser dazu bringen kann auf irgendetwas zu warten?
» Für mich hört sich das nach einem selbstverständlichen Verhalten an. Wenn du explizit wünscht, dass eine neue Seite kommt, ist es unerwünscht zu warten bis irgendwas auf der aktuellen Seite beendet wird.
Dir ist schon klar, dass ein Bild - egal ob es animiert ist oder nicht, keinen Browser dazu bringen kann auf irgendetwas zu warten?
Das ist genau das was ich sage.
Struppi.
Okay - dann hast du noch nicht ganz mein Problem, bzw. den Bug, welchen ich hier beschreibe, verstanden.
Ob ich auf einen Link klicke oder windows.location.href benutze sollte in der Darstellung von Bildern oder anderen Elementen, die schon geladen wurden, keinen Unterschied machen.
Macht es aber - da window.location.href das animierte Gif einfriert. Und wenn das Laden der kommenden Seite nun 3 Sekunden dauert, dann steht ja die alte Seite so lange noch da.
Bei window.location.href steht sieht man dann das animierte Gif wie es bei Frame 1 stehn bleibt.
Bei einem normalen Link (<a href=""></a>) sieht man 3 Sekunden lang das animierte Gif vor sich hinanimieren, bevor der Aufbau, der neuen Seite beginnt.
So - das war jetzt mein letzter Versuch es deutlich zu machen :)
Danke dennoch für deine Zeit!
Bei einem normalen Link (<a href=""></a>) sieht man 3 Sekunden lang das animierte Gif vor sich hinanimieren, bevor der Aufbau, der neuen Seite beginnt.
In manchen Browsern ist das anscheinend mittlerweile so, das war früher anders.
FF verhält sich so wie du es sagst. Dem IE 6 ist egal ob Link oder window.location.href, er stoppt das gif immer, im Opera läuft es in beiden Fällen weiter. Es ist also vermutlich kein definiertes Verhalten.
So - das war jetzt mein letzter Versuch es deutlich zu machen :)
Ich hab' dich durchaus verstanden, ich frag mich aber warum du einen Bug vermutest. Dazu müßtest du doch erstmal wissen wie das Verhalten in so einem Fall definiert ist, bevor du sagen kannst etwas ist falsch?
Wie gesagt, ich halte es so wie es Firefox macht für sinnvoll und angenehmsten, du erwartest es so, wie es Opera macht.
Struppi.
Mahlzeit quitix,
anzumerken sei, dass die Mail automatisch im Hintergrund versandt werden soll und der User halt auf die andere Seite weitergeleitet werden soll.
Mit einem entsprechenden serverseitigen Skript geht das ohne Probleme.
Mittels "mailto:" kannst Du allerdings nicht "im Hintergrund" versenden - der Browser ruft bei so einem Formular i.d.R. das auf dem System installierten Standard-Mailprogramm auf und versucht darüber das Formular zu versenden. Allein das wird schon genügend Fenster erscheinen lassen ... ganz zu schweigen von dem Fall, dass kein Mailprogramm installiert oder konfiguriert ist.
MfG,
EKKi
Hallo!
ist es möglich bei einem HTML-Mailformular 2 'actions' zu haben? Ich möchte, dass die eingegebenen Daten per E-Mail versandt werden und gleichzeitig eine Weiterleitung auf eine andere Seiter erfolgt.
Ich wurde in der Datei, wo du das Mailformular bzw. die Mail bearbeitest verschickst mit
<?php header('Location: http://<deine_url>'); ?>
den User nach dem Bearbeiten der Mail weiterleiten. Der bekommt davon nix mit.
Mehr Infos: header() auf PHP.net
Mahlzeit quitix,
ist es möglich bei einem HTML-Mailformular 2 'actions' zu haben?
Nein.
Ich möchte, dass die eingegebenen Daten per E-Mail versandt werden und gleichzeitig eine Weiterleitung auf eine andere Seiter erfolgt.
Dann versende das Formular zum Server, lass ihn aus den Daten eine E-Mail generieren sowie verschicken und anschließend auf die gewünschte Seite weiterleiten. Wo ist das Problem?
MfG,
EKKi