PHP im HIntergrund ausführen... ?!

Hallo,

ich habe in meinem Flash Film ein Formblatt mit den UI Komponenten von Flash MX erstellt und dazu das passende ("sende Daten per E-Mail") PHP Skript geschrieben.


Die Übergabe der Daten und das Versenden der E-Mails funktionieren fantastisch. Da gibts keine Probleme.

Das einzige Problem ist folgendes:

Wenn ich auf den "Submit Button" zum Abschicken der eingegebenen Daten klicke geht ein leeres Fenster auf und ich komme nicht mehr zurück zu meinem Flash Film.


Hier der Flash-Code meines Buttons (des "normalen Buttons"):

on (press, release) {
userData = new LoadVars();
userData.name = name;
userData.company = company;
userData.street = street;
userData.city = city;
userData.state = state;
userData.zip = zip;
userData.mailabs = mailabs;
userData.phone = phone;
userData.message = message;
userData.janitorial = janitorial.getValue(); //Check Box
userData.security = security.getValue(); //Check Box
userData.housekeeping = housekeeping.getValue(); //Check Box
userData.food = food.getValue(); //Check Box
userData.engineering = engineering.getValue(); //Check Box
userData.send("request.php", "POST");
gotoAndStop("Contact us", 1);
}

Kann mir jemand helfen und erklären, wie ich das Skript im Hintergrund laufen lasse, damit mein Flash Film nicht gestoppt bzw geschlossen wird ?


Danke

Hier noch das PHP Skript:

<?php
$adminaddress="name@mail.com";

$sitename="http://www.adresse.com";


mail("$adminaddress","Request for Information",
"A visitor at $sitename has applied a request for information\n
Name:$name\n
Company Name:$company\n
Street Address:$street\n
City:$city\n
State:$state\n
Zip Code:$zip\n
Phone:$phone\n
Email Address:\n$mailabs\n
User Message:$message\n\n
Service Interest:\n
Janitorial:$janitorial\n
Security:$security\n
Housekeeping:$housekeeping\n
Food:$food\n
Engineering:$engineering\n");

mail("$mailabs","Thank you for visiting $sitename",
"Thank you for your interest");

?>

DANKE

Christian
 
Hmm ich kenne mich zwar mit Flash gar nicht aus, aber wenn du dort ein target="" mitgeben kannst, dann könntest du den Submit ja in einen anderen Frame, bzw. iFrame lenken.
Der Frame selbst ist mit 0px nicht sichtbar, führt aber dein PHP Script aus ohne, dass sich etwas sichtbares tut.
 
Probiers mit den LoadVars() und
sendAndLoad(url,backvars,methode);
PHP:
backVars = new LoadVars();
userData.send("request.php", backVars,"POST");
Jetzt wird alles was das PHP zurückschickt in dem LoadVars-Object backVars gespeichert und es geht kein neues Fenster auf.

Zusätzlich kannst du da die backVars auslesen für die Rückmeldeung
zB: "Ihre Email wurde erfoglreich versendet!

Hoffe es hilft!

lg TF
 
Das hört sich fantastisch an, es gibt nur noch ein kleines Problem - hatte mich bis vor ein paar Tagen mit PHP noch überhaupt nicht beschäftigt - und auch nicht mit dem entsprechenden AS für Formmails und krieg es immer noch nicht hin - habe mal den von Dir vorgeschlagenen (siehe oben) Code in mein AS eingefügt :

Code:
on (press, release) {
	userData = new LoadVars();
	userData.name = name;
	userData.company = company;
	userData.street = street;
	userData.city = city;
	userData.state = state;
	userData.zip = zip;
	userData.mailabs = mailabs;
	userData.phone = phone;
	userData.message = message;
	userData.janitorial = janitorial.getValue();
	userData.security = security.getValue();
	userData.housekeeping = housekeeping.getValue();
	userData.food = food.getValue();
	userData.engineering = engineering.getValue();
	userData.send("request.php", "", "post");
	backVars = new LoadVars();
	userData.send("request.php", backVars, "POST");
}

und stelle mich bestimmt wahnsinnig blöd an wenn ich das so mache... ;-(

Aber so klappt es auf jeden Fall nicht, das weiß ich schon - es geht immer noch eine leeres IE Fenster auf...

kannst Du mir genauer verraten wie dein Vorschlag funktioniert ?

Und das mit dem backVars wieder auslesen, um eine Bestätigung nach dem Motto - Message send - anzeigen zu lassen hört sich verdammt gut an - wie mache ich das ? Kann die Message dann in dem nächsten Frame meines Flash Films stehen ?

Danke,

Christian

P.S.: Die Idee mit dem leeren und klitzekleinen iFrame war auch gut - aber das habe ich schon direkt vor dem Posting hier versucht - und das ist ja das Problem da geht mir die Seite flöten und das Fenster wechselt die Farbe zu weiß und leer - oben in der Adresszeile wird dann meine request.php File als geladen angezeigt.....
So hab ich das versucht:
Code:
userData.send("request.php", " ", "post");

............... to be continued .... DANKE ! :-)
 
Zurück