Know-how für Kreative.

Inhaltsverzeichnis
Vorwort
1 Flash für ActionScript
2 ActionScript in Flash
3 Flash Pro für ActionScript
4 Grundlagen der Programmierung
5 Einfache Filmsteuerung
6 Bildschirme und Präsentationen
7 Drucken und das Kontextmenü
8 Textfelder
9 Tasten
10 Datum und Zeit
11 Rechnen
12 Farbe wechseln und Drag
13 Zeichnen und Zufall
14 Von Mäusen und Duplikaten
15 Kollisionstest
16 Sound
17 Video
18 Externe Filme
19 Vorladen und Player erkennen
20 Formulare und UI-Komponenten
21 Komponenten anpassen
22 Formulare versenden
23 Warenkorb
24 Ausblick auf ActionScript 3
Stichwort
Download: - ZIP, ca. 14,4 MB
Ihre Meinung?
<< zurück | Galileo Design / <openbook> /Einstieg in ActionScript | vor >>
Einstieg in ActionScript von Christian Wenz, Tobias Hauser, Armin Kappler Aktuell zu Flash 8
Einstieg in ActionScript brosch., mit CD und QuickFinder und Referenz 416 S., 24,90 Euro Galileo Design ISBN 978-3-89842-774-6 |
| 22 Formulare versenden
|  | 22.1 Daten versenden und austauschen
|  | 22.2 Kontaktformular
## 22.2 Kontaktformular Wie üblich haben wir im Flash-Bereich bereits Vorbereitungen getroffen, Sie müssen im Wesentlichen nur den ActionScript-Code ergänzen. ##### Schritt für Schritt: Ein Kontaktformular erstellen Öffnen Sie die Datei versenden.fla von der CD-ROM. Dort finden Sie ein Kontaktformular in mehreren Bildern. Werfen Sie einen Blick auf das eigentliche Kontaktformular in Bild 1. Sie sehen eine Reihe von dynamischen Textfeldern: Nachname (nachname_str), Vorname (vorname_str), Betreff (betreff_str), Anfrage (anfrage_str), E-Mail (email_str) und Telefon (telefon_str). Zum Versenden des Formulars dient die Schaltfläche senden_btn. Hier klicken, um das Bild zu vergrößern Abbildung 22.2 Das Kontaktformular (noch unausgefüllt) Als Nächstes müssen Sie dafür sorgen, dass die Versenden-Schaltfläche erst aktiviert wird, wenn in allen Textfeldern etwas steht. Das erledigt folgender Code:
    stop();
    senden_btn.enabled = false;
    var id_number:Number = setInterval(pruefen, 250);
    function pruefen() {
       var ok:Boolean = true;
       if (nachname_str == null ||
          vorname_str == null ||
          betreff_str == null ||
          anfrage_str == null ||
          email_str == null ||
          telefon_str == null) {
          ok = false;
       }
       if (senden_btn.enabled != ok) {
          senden_btn.enabled = ok;
       }
    }
Anfangs ist die Schaltfläche deaktiviert (senden_btn.enabled = false). Dann wird periodisch die Funktion pruefen() aufgerufen, die alle Formularfelder überprüft und gegebenenfalls die Schaltfläche freigibt. Sobald der Nutzer die Schaltfläche anklickt, soll auf die nächste Seite des Formulars weitergeleitet werden. Das geschieht mit folgendem Code:
    on (release) {
       gotoAndStop(5);
    }
Ab Bild 5 gibt es im Flash-Film eine Bestätigungsseite, in der die Formulareingaben wiederholt werden. Wenn Sie einen kurzen Blick auf die Variablennamen der dynamischen Textfelder werfen, stellen Sie fest, dass diese identisch sind mit den Variablennamen im Kontaktformular. Konsequenz: Diese Felder werden im Voraus automatisch mit den richtigen Werten ausgefüllt, eine große Zeitersparnis. Hier klicken, um das Bild zu vergrößern Abbildung 22.3 Die Bestätigungsseite (bis jetzt noch leer) Die beiden Schaltflächen müssen Sie noch mit Funktionalität belegen. Bei der Zurück-Schaltfläche soll der Film an den Anfang zurückspringen:
    on (release) {
       gotoAndStop(1);
    }
Die Bestätigen-Schaltfläche dagegen springt zu Bild 10:
    on (release) {
       gotoAndStop(10);
    }
Die letzte »Seite« des Kontaktformulars, die Bestätigungsseite ab Bild 15, enthält nur einen Bestätigungstext, keine dynamischen Textfelder mehr. Hier klicken, um das Bild zu vergrößern Abbildung 22.4 Die Ergebnisseite (sie ist immer so leer) In Bild 10 sollten Sie die Formulardaten an ein serverseitiges Skript senden.Die Übergabe der Daten ist nicht weiter schwierig, da sie komplett in dynamischen Textfeldern vorliegen. Der Code beschränkt sich auf einen einfachen Aufruf von loadVariables():
    loadVariables("flash.php", "", "POST");
Nun benötigen Sie ein PHP-Skript, das die Daten per E-Mail verschickt. Aus Gründen der Einfachheit wählen wir einen allgemeinen Ansatz, bei dem alle POST-Daten ausgegeben und per Mail gesendet werden. Sie benötigen dazu ein korrekt konfiguriertes PHP, das in der Lage ist Mails zu verschicken. Hier der Code des PHP-Skripts flash.php:
    <?php
      $betreff = (isset($_POST['betreff_str'])) ? $_POST['betreff_str'] : '';
      ob_start();
      print_r($_POST);
      $daten = ob_get_contents();
      ob_end_clean();
      mail('webmaster@xy.de',
       $betreff,
       $daten);
    ?>
Ändern Sie webmaster@xy.de in Ihre eigene E-Mail-Adresse um. Außerdem müssen Sie gegebenenfalls PHP entsprechend konfigurieren. Dazu finden Sie in der PHP-Konfigurationsdatei php.ini einen Abschnitt [mail], in dem Sie entsprechende Angaben machen können. Das ist insbesondere bei einer lokalen PHP-Installation erforderlich; bei einem Webhoster übernimmt das in der Regel der Provider für Sie. Kopieren Sie sowohl die Datei flash.php als auch die SWF-Datei des Films in ein Verzeichnis auf dem Webserver. Falls Sie zusätzlich von Flash eine HTML-Datei erstellen ließen, die die SWF-Datei einbindet, kopieren Sie die Datei mit. Rufen Sie den Film im Webbrowser auf. Dabei müssen Sie über den Webserver gehen, also beispielsweise http://servername/datei.swf aufrufen. Füllen Sie das Formular aus, schicken Sie es ab und warten Sie darauf, dass die E-Mail bei Ihnen eintrifft. Hier klicken, um das Bild zu vergrößern Abbildung 22.5 Die automatisch erzeugte Mail; der Betreff wurde übernommen Ein komplett lauffähiges Beispiel finden Sie in der Datei versenden_AS2.fla bzw. versenden_AS1.fla, ebenso das fertige Skript flash.php. Es ist übrigens wichtig, dass Sie das Beispiel über einen Webserver abspielen lassen. Falls Sie das nicht tun und die SWF-Datei per Dateisystem aufrufen (etwa C:\Verzeichnis\Dateiname.swf), klappt der Aufruf des Skripts nicht. Wenn Sie das innerhalb von Flash versuchen, erscheint im Ausgabe-Fenster sogar eine entsprechende Warn- beziehungsweise Fehlermeldung.
Mailversand
Nicht immer steht ein Mailserver zur Verfügung, über den die E-Mail verschickt werden kann. Insbesondere beim Test auf der lokalen Maschine mangelt es an einem SMTP-Server – ohne geht es aber leider nicht. Aus diesem Grund ist im PHP-Skript eine weitere Möglichkeit vorgesehen: das Schreiben der Formulardaten in eine Datei auf dem Webserver. Allerdings ist dies nur als Notlösung zu sehen.
Hier klicken, um das Bild zu vergrößern Abbildung 22.6 Fehler beim Aufruf per Dateisystem und ohne Webserver Die hier gezeigte Kontaktaufnahme ist natürlich nur ein Beispiel. Wenn Sie mit den Autoren dieses Buches Kontakt aufnehmen möchten, finden Sie unter http://www.hauser-wenz.de/support Updates zum Buch sowie ein Kontaktformular – zwar ohne Flash, aber wir antworten trotzdem. ### Ihr Kommentar Wie hat Ihnen das <openbook> gefallen? Wir freuen uns immer über Ihre freundlichen und kritischen Rückmeldungen. >> Zum Feedback-Formular
<< zurück | <top> | vor >>
Zum Katalog
ActionScript 3 Das Praxisbuch bestellen
Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen? Ihre Meinung
Buchtipps
| Adobe Flash CS3
| Flash fast forward
| Dreamweaver CS3
Shopping
Versandkostenfrei bestellen in Deutschland und Österreich Info

Copyright © Galileo Press 2006
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das <openbook> denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.

[Galileo Design]
Galileo Press, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, info@galileo-press.de