Kontaktformular

Dieses Tutorial setzt Grundkenntnisse in Flash voraus. Erfahrungen im Umgang mit PHP wären auch hilfreich.

1. Wir erstellen uns 7 dynamische Textfelder auf der Bühne. Den Textfeldern geben wir jeweils diese Instanznamen: firma, name, str, ort, plz, email, nachricht

Nun vergeben wir noch passende Variablennamen: txt_firma, txt_name, txt_str, txt_ort, txt_plz, txt_email, txt_nachricht.

Ein Button erstellen wir uns noch, mit dem wir später die Anfrage senden können. Dieser bekommt den Instanzname but_senden.

2. Im Frame 1 setzten wir nun dieses ActionScript ein (Erklärung im Code):

// Sonderzeichen Aktiv
System.useCodePage = true;
// Im Feld plz Können nur Zahlen eingegeben werden
plz.restrict = „0-9“;
// Die Textfelder bekommen eine Zuweisung und der MovieClip mit der
// Fehlermeldung wird ausgeblendet
_root.onLoad = function() {
_root.mc_fehler._visible = false;
_root.firma.text = „Ihr Firmenname“;
_root.name.text = „Ihr Name“;
_root.str.text = „Ihre Straße“;
_root.ort.text = „Ihr Wohnort“;
_root.plz.text = „Ihre PLZ“;
_root.email.text = „Ihre eMailadresse“;
_root.nachricht.text = „Ihre Mitteilung an uns…“;
};
// Das array mit den Instanznamen von unseren Textfeldern
textfeld = new Array();
textfeld[0] = „firma“;
textfeld[1] = „name“;
textfeld[2] = „str“;
textfeld[3] = „ort“;
textfeld[4] = „plz“;
textfeld[5] = „email“;
textfeld[6] = „nachricht“;
// Durchlaufe solange wie viele Elemente im array vorhanden sind
for (i=0; i // Funktion für den Hintergrung im Textfeld
_root[textfeld[i]].onSetFocus = function() {
this.backgroundColor = 0xcccccc;
// Überprüfung, ob im Textfeld schon reingeklickt worde ist
// damit nicht beim erneuten klicken der geschriebene Text
// gelöscht wird
if (_root[this._name]) {
_root[this._name].text = „“;
_root[this._name] = false;
}
};
// Funktion für den Hintergrung im Textfeld
_root[textfeld[i]].onKillFocus = function() {
this.backgroundColor = 0xFFFFFF;
};
}
// Überprüfung ob in den Pflichtfeldern etwas eingetragen ist
// Diese Funktion wird unten in der if Bedingung aufgerufen
String.prototype.leer = function() {
for (i=0; i // Steht was im Textfeld ?
// 32 bedeutet größer als ein Leerzeichen, da das Leerzeichen den
// Code 32 besitzt.
if (this.charCodeAt(i)>32) {
return true;
}
}
};
// Funktion für den Button
but_senden.onRelease = function() {
// Überprüfung ob in der eMailadresse ein @ Zeichen vorkommt
// Überprüfung ob die eMailadresse weniger als 6 Zeichen hat
// Überprüfung ob ein Name und ein Nachrichtentext eingegeben wurde
// Diese Überprüfung ruft die Funktion leer auf
if (txt_email.indexOf(„@“) == -1 || txt_email.length<6 || _root.name.text.leer() || _root.nachricht.text.leer()) {
// Bei True wird die Fehlermeldung angezeigt
_root.mc_fehler._visible = true;
} else {
// Weiterhin die Fehlermeldung ausblenden und das php Script aufrufen
_root.mc_fehler._visible = false;
loadVariablesNum(„http://www.deinserver.de/senden.php“, 0, „GET“);
}
};

3. Nun erstellen wir uns eine PHP-Datei mit diesem Code:

$suchen = „r“;
$ersetzen = „n“;
// Suche und ersetzte, da Flash Zeilenumbrueche mit r angibt
// und php aber nur mit n arbeitet
$nachricht_neu = str_replace($suchen,$ersetzen,$_GET[txt_nachricht]);
$text = $_GET[txt_name].“, übermittelt Ihnen folgende Informationen:n“;
$text .= „Name: $_GET[txt_name]n“;
$text .= „Firma: $_GET[txt_firma]n“;
$text .= „Straße: $_GET[txt_str]n“;
$text .= „Ort: $_GET[txt_ort]n“;
$text .= „Plz: $_GET[txt_plz]n“;
$text .= „eMail: $_GET[txt_email]n“;
$text .= „Nachricht: $nachricht_neu n“;
$empfanger = „IHRE_EMPFAENGER_EMAILADRESSE“;
mail($empfanger, „Flashbattle.de“, $text, „Von: Flashbattle.de Forum“);
?>

Wer dem Besucher noch eine Bestätigungsemail zukommen lassen möchte, ergänzt bitte das PHP-Script um diese 3 Zeilen am Ende:

$besta = „$_GET[txt_name], danke für Ihre Nachricht!n“;
$besta .= „Dies ist eine Bestätigungsemailn“;
mail(„$_GET[txt_email]“, „Bestätigungsemail“, $besta, „From: IHRNAME“);

4. Jetzt alles abspeichern und hoch auf den Server damit. Sie sollten noch darauf achten, dass der Server php-fähig ist und die Rechte für die Datei richtig gesetzt sind (CHMOD 777).

Ein Tipp von: Sven Gasser, bearbeitet und aktualisiert von: Designer in Action

Kommentieren

Ich akzeptiere die Datenschutzerklärung.