Mails versenden per Flash

Thema:
Mails versenden per Flash
Description:
Aufbau von Kontaktformularen in Flash; Mails versenden per Mailprogramm oder per PHP
Keywords:
Flash, Mail, PHP
Author:
Sebastian Weyrauch
Date:
09.07.2002
Doc-ID:
49-001
URL:
http://www.flashworker.de/tutorial/49/001.html
Version:
1.0
Änderungen:
-
Anforderungen:
Flash 5
Server mit PHP und Mail Unterstützung
Vorkenntnisse:
Flash Grundkenntnisse
Download:
PC: "mailen_in_flash.zip", 13 kB
Beispiel: "mailer.zip", 5 kB

Einleitung
  Was bringt dieses Tutorial?


Mails versenden ohne Server-Programmiersprachen (PHP, CGI...)
  Der 'mailto' Befehl
  Dynamisches Mailen durch Variablen


Mails versenden per PHP
 Der 'mail' Befehl in PHP
 Dynamisches Mailen durch Variablen
 Kommunikation Flash und PHP
 Der komplette Mailer



Was bringt dieses Tutorial?

Hoi Leute...

Für viele Flasher ist dieses Thema nichts wirklich Neues. Ich habe aber meine Erfahrungen damit gemacht, dass täglich eine Reihe an Usern die Frage nach einem Formmailer in Flash stellt.
Dieses Tutorial ist vorallem für diejenigen geeignet, die bisher solch ein Formmailer nicht realisieren konnten oder für diejenigen, die es über das Mailprogramm gemacht haben.

Es werden alle Aktionen, die zum Mailen notwendig sind, in knappen und verständlichen Sätzen erläutert. Es wäre, denke ich, sinnlos große Romane darüber zu schreiben.





Mails versenden ohne Server-Programmiersprachen (PHP, CGI...)

Wie in HTML, kann man die Mails über das Mailprogramm mit mailto: versenden.

getURL ("mailto:User<deine@email.de>");
Schön und gut...Aber wie kann man den Betreff, den Text usw. definieren?!?!
Hier die Antwort:

Man muss die Variablen per Query weitergeben, also

getURL ("mailto:User<deine@email.de>?subject=Betreff&body=Hier der Text");


Da stellt sich doch gleich die nächste Frage, wie kann man die Texte dynamisch verändern,
d.h. wie kann ich ein Formular dafür erstellen?!

Zuerst musst du Textfelder mit Variablen erstellen (z.b.Name,Email,Betreff,Text).

Die Aktion zum Mailen müsste dann folgendermaßen aussehen.

getURL ("mailto:"+Name+"<"+Email+">?subject="+Betreff+"&body="+Text);

Wie - das war es? Ja, schon ist das Formular im Prinzip fertig.



 

Mails versenden per PHP

Mails über das Mailprogramm zu versenden, ist für Formulare nicht mehr üblich und gilt als
unprofessionell. Deswegen greifen viele auf Server-Programmierung zurück - PHP, CGI usw.
In diesem Tutorial wollen wir das ganze mal mit PHP behandeln.
Dazu ist zunächst einmal zusagen, dass dein Server PHP unterstützen muss und auch die Mail-Funktion.

In PHP mailt man per

<?
mail("empfaenger@email.de","Betreff","Text","From: Absender");
?>

 



Da wir das ganze aber ja dynamisch haben wollen:

<?
mail($empf,$betreff,$text,"From: ".$email);
?>

 



Jetzt musst du nur noch in Flash die PHP-Datei mit

loadVariables ("mailer.php4", "", "GET");

aufrufen (natürlich müssen die Variablen definiert sein) und fertig ist der Formmailer.



Die ausgearbeitete Version; hier wird eine Bestätigung an den Absender geschickt
und zusätzlich werden die Zeilenumbrüche in der Mail sichtbar (was normalerweiße nicht der Fall wäre):

<?
// Text für die Bestätigungsmail
$vtext="Deine Mail ist sicher bei $empf angekommen."; // Betreff der Bestätigungsmail
$bestaetigung="Mail angekommen";

$text=str_replace("\\\"","\"",$text);
$text=str_replace("\'","'",$text);
urlencode ($text);
$text=str_replace("%0D","\n",$text);

// e-Mail wird abgeschickt und zur Bestätigung wird noch eine Mail an den Absender geschickt
mail($empf,$betreff,$text,"From: ".$email);
mail($email,$bestaetigung,$vtext,"From: ".$empf);

/*
diese Variablen müssen in Flash definiert sein:
empf: Empfänger (bei der Bestätigung natürlich umgekehrt)
email: Absender ( ... )
betreff: Betreff der Mail
text: Text für die Mail
*/

?>

 


Ich hoffe, dem einen oder anderen wird es helfen, ansonsten ein Beispiel noch im Anhang.

Sebastian