 |
Boite envoi Mail en Flash |

|
Tutorial écrit par : Gasp
- Oui-oui.org
|
|
Introduction |
|
|
Bon, toujours de nouvelles aventures en Flash. Cette fois-ci nous allons
faire une boite d'envoi d'email qui n'utilisera ni Outlook ni quoi que
ce soit d'autre. L'envoi des message se fera automatiquement vers votre
boite aux lettres préférée. Et tout ça grâce
à PHP !
Voici à quoi ressemblera notre boite. Vous pouvez la tester en
m'envoyant un message à cette URL : www.oui-oui.org/email.html

Tout d'abord, nous allons créer l'interface d'envoi
sous Flash. Elle se fera sur 9 images-clés. Certaines resteront
vides...

|
|
1ère frame |
|
|
Sur la première frame, vous créez 3 champs de texte de
saisie en ligne simple et une zone de texte en multiligne.
N'oubliez pas de cocher le contour de cellule ainsi que d'attribuer une
variable à chaque zone de texte.

Voici l'intitulé de chaque zone :
NOM VARIABLE
1/ Nom --> nom
2/ Prénom --> prenom
3/ Email --> email
4/ Message --> message
Ensuite créez un bouton destiné à passer en seconde
frame. Sur ce bouton placé en bas de la boite, insérez le
code suivant :
on (release) {
nextFrame();
} |
Avant de passer à la suite, placez sur l'image même
l'action suivante :
Ainsi vous éviterez que l'animation continues sa
lecture avant que vous n'ayez cliqué sur le bouton.
|
 |
2nde frame |
| |
Sur la seconde frame, insérez une image clé vide (F7) et
placez-y le code suivant :
if ((nom eq "") || (prenom eq "") || (email
eq "") || (message eq "")) {
gotoAndPlay(6);
} else {
loadVariablesNum("zemail.php", 0, "POST");
play();
} |
Ceci permet de vérifier si chaque champ a bien été
rempli. Souvenez-vous de l'expression eq "" vue dans le Tuto
créer une section privée.
Ensuite on utilise la fonction loadVariablesNum pour spécifier
le chemin vers une source de variables - un script php qui retourne les
variables. Donc mettez le nom de votre fichier PHP.
|
 |
Frames 3 à 5 |
| |
Pendant que les données sont gérées par le script
PHP, il faut faire patienter le visiteur (2 à 3 sec.)
Donc, faites un petit écran d'attente. Moi, personellement, j'ai
fait une nouvelle image clé en frame 3 avec un petit point qui
grossit sur les 2 frames suivantes. Aucune action ici.
|
 |
Frame 6 |
| |
Sur la frame 6, nous allons placer un script qui dira que faire à
l'animation. Soit elle continue à faire patienter le visiteur (retour
sur frame 3 à 5). Si il ya un problème d'envoi, l'animation
ira sur la frame 8, où l'on expliquera qu'il y a un problème
et en cliquant sur un bouton, l'on pourra renvoyer son message. Si tout
se passe bien, on passe en frame 7.
Frame 7 : "Message Envoyé, merci et à bientôt
!"
Code à placer sur la frame 6 :
if (done == 0) {
gotoAndPlay (3);
} else {
if (ok == 0) {
gotoAndPlay (8);
} else {
gotoAndPlay (7);
}
} |
|
 |
Frame 7 |
| |
Placez-y une action stop :
Nous l'avons vu plus haut, cette frame est destinée à recevoir
le visiteur si il a oublié de remplir le champ de texte. Donc,
mettez votre message ainsi qu'un bouton pour revenir sur la frame 1.
Sur le bouton placez l'action suivante :
on (release, keyPress "<Enter>") {
gotoAndPlay(1);
} |
|
 |
Frame 8 |
| |
La rançon du succès. Le message a bien été
envoyé. Toujours pour stopper l'action sur cette image, placez
l'action suivante :
stop();
nom = "";
prenom = "";
email = ""; |
|
 |
Frame 9 |
| |
C'est la même chose qu'en frame 7. La seule différence,
c'est le texte : "Problème d'envoi. Réessayez !"
N'oubliez pas le bouton.
Et voilà pour l'interface Flash. Après il vous suffit de
configurer le fichier php. Dans mon cas, il s'appelle zemail.php :
<?
function parse($variable,$valeur)
{
echo "&$variable=$valeur";
}
// on parse les variables de flash
mail("votre_adresse_préférée@zemail.org","","$nom
$prenom vous envoie un mot doux : \r\n\r\n$message \r\n\r\n Son
Mail est le suivant:\n$email");
if ($r) parse("ok",1);
else parse("ok",0);
parse("done",1);
?>
|
|

|
Conclusion |
| |
Et voilà, c'était facile, non ? Il y a quelques
améliorations à faire côté script php. Là
vous avez le minimum syndical...
Je pensais peut-être mettre en couleur l'adresse mail. Et quelque
chose de faisable qui serait bien, c'est de configurer l'entête
du message. Comme ça lorsque vous recevez un message vous auriez
des infos. A bon entendeur, salut !
Pour toute question n'hésitez pas à vous rendre sur le forum.
Les
sources sont disponibles ici.
GAsp
|