Rappel : Dans l'étape
1, nous avons appris à récupérer des valeurs dynamiques
depuis un fichier ASP|PHP. Nous en aurons besoin ici !
1. Déclaration des variables
L'image 1 est vierge,
CLIC DROIT sur la frame 1 > ACTIONS.
Ceci a pour but de
faire apparaître la fenêtre d'actions.
Déclarez les valeurs dont vous aurez besoin en tant que variables
nulles :
Auteur="";
Mail="";
Texte="";
stop();
Le STOP (); permet
de s'arrêter à l'image 1 qui contiendra notre formulaire
(sinon, le fichier tourne en boucle !)
2. Mise en place
du formulaire
Insérez
des zones de texte : dans les propriétés : déclarez
dans les "Options de texte" qu'il s'agit : d'un Texte de saisie
Une seule ligne / multiligne (selon)
Et le NOM de la variable qu'il transportera... NB : Dans l'onglet "Caractères", vous pouvez définir
la police, la taille, la couleur.
C'est très intéressant si l'on veut employer des polices spécifiques...
Dans le cas de polices "spéciales" veillez à cocher
les options de POLICE INTEGREE... ainsi tous
les internautes verront votre fabuleuse police !
Ensuite : placez une
zone de texte qui s'affichera en rouge
(réglez la taille des caractères en fonction de vos besoins).
il s'agit de notre message d'erreur "Veuillez
remplir tous les champs".
Dans les Options, déclarez qu'il s'agit : D'un texte dynamique
Une seule ligne
Et qu'il contiendra le nom du message d'erreur... messErreur ici.
NB : Si vous souhaitez
que le cadre soit invisible au début, décochez Bord/Arr
Plan
Insérez ensuite un
bouton (si vous êtes "expert" créez-le ! Sinon, si vous
êtes novice, ou pressé, appuyez sur CTRL+L pour afficher la librairie
de base.)
Insérez votre bouton. Puis Clic Droit dessus > action
Déclarez le code
ci-dessous : on (release) {
// On teste si les champs sont remplis (d'autres tests
sont possibles !)
if ((Auteur != "") && (Email != "") && (Texte
!= "")) {
// Envoi simplement des données à la page
de script ASP ou PHP selon votre cas !
loadVariablesNum ("traitement.asp", 0, "POST");
gotoAndPlay (2);
} else {
messErreur = "Merci de remplir tout les champs !";
}
}
Explications : Si les champs
AUTEURS EMAIL et TEXTE sont vides : alors messErreur contiendra "Remplissez
tous les champs" et s'affichera ... en rouge.
Il est bien sûr possible de peaufiner les tests pour chaque variable,
et adapter le message d'erreur à chaque champ !
Et enfin, si tous les champs sont correctement remplis, alors,
- On envoie les valeurs dans le fichier dynamique "traitement.asp"
ET on récupère une variable au passage (fonction LoadVariablesNum)
!
- L'animation en Frame 2 s'active...
3. Traitement des
données
Les données sont
transférées vers le fichier de traitement dynamique.
Votre fichier
dynamique contiendra le traitement que vous souhaitez effectuer
: envoi d'Email, enregistrement de fiche dans une base de données...
Mais dans tous les cas votre fiche doit retourner une variable de
"bon déroulement".
Rappel : pour envoyer transfertOK=1
à Flash, il faut lui présenter sous la forme : &transfertOK=1
<% ' ...Votre traitement aspmail / ou gestion BD ACCESS SQL = "Select * from Messages" Set ajout = Server.CreateObject("ADODB.Recordset") ajout.Open sql, conn, 3, 3 Ajout.addnew ajout("Email")=request.form("Email") ajout("auteur")=request.form("auteur") ajout("texte")=request.form("texte") Ajout.Update
response.write "&TRANSFERTOK=1"%>
<? // ...Votre traitement phpmail / ou gestion BD MySQL $SQL = "INSERT INTO Messages(EMAIL,AUTEUR,TEXTE) VALUES('$EMAIL','$AUTEUR','$TEXTE')"; $result = mysql_query($SQL);
echo "&TRANSFERTOK=1";?>
4. Animation d'enregistrement
Ici, il s'agit juste d'une
barre qui s'étire...L'animation peut contenir n'importe quoi...
En frame
10, insérez le code suivant :
Si le fichier de traitement renvoie TRANSFERTOK=1
alors, l'animation s'arrête et va à l'écran de fin !
Sinon, si le serveur est lent... et que la variable n'est pas "revenue",
alors... l'animation recommence en 2 !