| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| me.wo Registriert seit: Oct 2006 Ort: Köln-Mülheim
Beiträge: 23
|
Hallo liebe Flash-Experten, ich habe meine swf in html eingebunden und steuere es auch teilweise extern. In der swf ist u.a. ein Formular, welches per php und E-Mail versendet wird. Klappt auch soweit alles wunderbar. Nun möchte ich aber, dass der Film auf einen anderen Frame springt, wenn die Daten gesendet wurden. Bei meinen Versuchen springt er zwar in den gewünschten Frame, verschickt aber dann die Mail nicht mehr. Hat da vielleicht jemand eine Idee, woran das liegen könnte? Hier ein Ausschnitt meines Scripts (das Problem ergibt sich unten durch: _root.gotoAndPlay(4) :HTML-Code: fncInit = function () {
for (i=0; i<txtFeldArr.length; i++) {
currentTxtFeld = 0;
prevtTxtFeld = 0;
mcFormular[txtFeldArr[i]].i = i;
fncClear(mcFormular[txtFeldArr[i]], mcFormular[txtFeldArr[i]].i);
fncOldStyle(mcFormular[txtFeldArr[i]]);
mcFormular[txtFeldArr[i]].onSetFocus = function() {
prevtTxtFeld = currentTxtFeld;
currentTxtFeld = this;
fncNewStyle(currentTxtFeld);
fncOldStyle(prevtTxtFeld);
fncCheckContent(currentTxtFeld);
fncCheckContent(prevtTxtFeld);
};
}
};
fncSend = function () {
felderVoll = false;
emailRichtig = false;
for (i=0; i<txtFeldArr.length; i++) {
if ((mcFormular[txtFeldArr[i]].text == "") || (mcFormular[txtFeldArr[i]].text == txtLabelArr[i])) {
mcFormular[txtFeldArr[i]].textColor = "0xFF0000";
mcFormular.txtStatus.text = "Alle Felder korrekt ausfüllen";
felderVoll = false;
} else {
felderVoll = true;
}
if ((mcFormular.varEmail.indexOf("@")<2) || (mcFormular.varEmail.indexOf(".")<5)) {
mcFormular.txtEmail.textColor = "0xFF0000";
mcFormular.txtStatus.text = "Alle Felder korrekt ausfüllen";
emailRichtig = false;
} else {
emailRichtig = true;
}
}
if ((felderVoll == true) && (emailRichtig == true)) {
mcFormular.txtStatus.text = "Daten gesendet ...";
mcFormular.loadVariables("fujiGameMail.php", "POST");
_root.gotoAndPlay(4);
}
};
mcFormular.btnSend.onRelease = function() {
this.txtLabel._x = this.txtLabel._y -= 1;
fncSend();
};
fncInit(); Geändert von me.wo (26-08-2008 um 14:11 Uhr) |
| | |
| | #2 (permalink) |
| asFlasher Registriert seit: Jul 2006
Beiträge: 1.136
|
Hallo, ich würde mir von PHP eine Rückmeldung geben lassen ob die mail versendet wurde oder nicht, jenachdem erscheint im Flash dann eine Fehlermeldung oder die Erfolgsseite. Gruß ksw24 P.S.: besser ist es auch mit LoadVars zu arbeiten...loadVariables ist veraltet und soll wohl nicht mehr benutzt werden. |
| | |
| | #3 (permalink) |
| me.wo Registriert seit: Oct 2006 Ort: Köln-Mülheim
Beiträge: 23
|
Hallo ksw24, erstmal vielen Dank für die schnelle Antwort! Wie würde es denn funktionieren, sich so eine Rückmeldung geben zu lassen? Hab da leider nicht so viel Ahnung von... Ist denn nicht auch eigentlich klar, dass sie nicht versendet wird, wenn sie nicht in meinem E-Mail Postfach ankommt? |
| | |
| | #4 (permalink) |
| asFlasher Registriert seit: Jul 2006
Beiträge: 1.136
|
Hallo, ja toll, nur weiß Flash oder PHP nicht, ob was in deinem Postfach angekommen ist. Du kannst mit PHP-Code: Im Flash kannst du das dann abfragen z.b. mit this.status. Um mal eben bei loadVariables zu bleiben: ActionScript:
Aber schau dir bitte loadVars an - ist wesentlich eleganter. Gruß ksw24 Geändert von ksw24 (26-08-2008 um 14:34 Uhr) |
| | |
| | #5 (permalink) |
| me.wo Registriert seit: Oct 2006 Ort: Köln-Mülheim
Beiträge: 23
|
Hallo ksw24, wenn ich diesen Test mache, erscheint der "erfolgsFrame"... Aber wieso kommt denn nichts an? Ich verstehe das nicht: Ohne "_root.gotoAndStop(4);" klappt alles super und mit gar nichts mehr? Gruß Meike PS: Danke auch für deinen Tipp bzg. loadVars. Werde ich mir gerne anschauen, aber erstmal muss ich dieses Problem hier lösen |
| | |
| | #7 (permalink) |
| me.wo Registriert seit: Oct 2006 Ort: Köln-Mülheim
Beiträge: 23
| PHP-Code PHP-Code: Geändert von me.wo (26-08-2008 um 15:16 Uhr) |
| | |
| | #8 (permalink) |
| asFlasher Registriert seit: Jul 2006
Beiträge: 1.136
|
Hallo, also eine Zeile kannst du löschen, sonst würden ja 2 Mails versendet. PHP-Code: Wenn du das PHP im Brwoser aufrufst, wird dann eine mail versendet? Ich nehme an ja, denn du schreibst ja, dass Flash auf den Erfolgs-Frame springt, was ja nur bei echo "status=done" passieren kann. Teste es dennoch, landet eine Mail in deinem Postfach, wenn du nur das PHP-Script im Browser aufrufst? Benzutzt du gotoAndStop()? Gruß ksw24 Geändert von ksw24 (26-08-2008 um 15:32 Uhr) |
| | |
| | #11 (permalink) |
| me.wo Registriert seit: Oct 2006 Ort: Köln-Mülheim
Beiträge: 23
| Internet Explorer will nicht mitmachen
Hallo... ja, ich schon wieder ![]() Ich habe das Ganze gerad mal mit verschiedenen Browsern getestet. In Firefox und Opera klappt alles super, aber im IE (Version 7.0.5730.13) sendet er zwar brav die Daten, aber springt nicht zum gewünschten Frame. Woran kann das liegen? |
| | |
| | #12 (permalink) |
| asFlasher Registriert seit: Jul 2006
Beiträge: 1.136
|
Hallo, das könnte unter Umständen an loadVariables liegen, weil als ich das Forum fragte was der Unterschied zu loadVars sei, das sagte man mir, es sei sowas wie Glück, ob bei loadVariables was ankommt oder nicht...loadVars sei sicherer in der Beziehung. Ich perönlich hatte nie Probleme mit loadVariables, in jedem Fall, ich meine auch im IE, habe ich das gewollte Ergebnis erhalten. Dennoch bin ich auf loadVars umgestiegen und findes es seither auch wesentlich angenehmer. Gruß ksw24 |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |