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).

Autor: Sven Gasser

Kommentieren

Ich erteile hiermit dem Betreiber von Designer in Action meine Einwilligung zur Nutzung und Verarbeitung der von mir angegebenen personenbezogenen Daten zum Zweck der Bearbeitung meiner Anfrage. Mir ist bekannt, dass ich jederzeit das Recht habe, der Verarbeitung meiner Daten mit Wirkung für die Zukunft zu widersprechen. Weitere Informationen zur Verarbeitung von personenbezogenen Daten: https://www.designerinaction.de/kontakt/impressum/#datenschutz