Formulaire d'envoie de email dans un swf grace a un fichier php - Flash/ActionScript - Programmation
Marsh Posté le 17-01-2008 à 06:46:00
Tu devrais commencer par debbuguer méthodiquement :
- Est-ce que PHP fonctionne sur ton host
- Est-ce que la fonction mail est activé
(pour ces 2 tu utilises phpinfo())
- Est-ce que je peux faire fonctionner une communication simple Flash>PHP>Flash
Quand tu as vérifié tout ca, je te filerais un code que j'ai fait et qui est en AS2 par ce que la ton truc il date de AS1 et c'est pas jojo.
D'ailleurs le résultat tu peux le voir sur mon site, rubrique contact, mais je suppose que tu n'as pas vraiment besoin d'exemple
Marsh Posté le 17-01-2008 à 10:14:48
Bon voila j'ai mis un fichier php sur le serveur avec la commande phpinfo(). Par contre je ne trouve pas ou ca dit si le serveur supporte ou non l'envoie de mail ni s'il supporte php (bien sur puique le fichier est .php). Sous quelle rubrique ca dit ces informations?
Voici ladresse du fichier en question.
http://elsantodesigns.com/lalala/test.php
Pour l'instant puisque je n'ai toujours pas trouvé de solution, le formulaire est utilisé pour lancer outlook avec les infos rentrés dans les champs. C'est pas aussi bien, mais c'est quand même mieux que rien.
www.elsantodesigns.com section contact
Merci pour l'aide
Marsh Posté le 17-01-2008 à 10:40:12
Donc il y a php.
Maintenant fait un fichier avec juste
<?php
mail(TONADRESSE, "TEst", "ton message" );
echo $mail;
?>
et vois si tu recois qque chose et si ca t'affiches 1 ou 0.
Si il affiche 1 la fonction mail fonctionne. ATTENTION je suis pas top en php, alors y'a surement une meilleur methode pour voir ca mais bon ... hein ... celui qu'est pas content
Donc dans ton fichier, tu te fais 3 champs textes avec comme nom d'occurence (et non pas nom de variable)
name_txt pour le nom du gars
mail_txt pour son mail
body_txt pour le message
Et sur la frame 1 du calque action tu colles ca :
Code :
|
quand c'est fait tu te crées un fichier PHP script_mail.php avec ca dedans :
Code :
|
Penses a changer les adresses mails dans le script et c'est bon
Marsh Posté le 17-01-2008 à 11:01:56
Bon, je viens de le faire, et j'ai bien recu un mail, mais je ne vois aucun 1 ou 0. Quest-ce que c'est sencé faire? Donc j'imagine que mon serveur supporte l'envoie de mail!!!!! Merci beaucoup, moi je vais me coucher (il est 5h du matin ici), et j'essayerai demain matin tout le code que tu viens de me donner.
Merci encore
Marsh Posté le 19-01-2008 à 22:14:59
Bon tu vas me trouver fatiguant Zed, mais je ne me souviens plus ce que j'ai bien pu changer à mon code, mais il ne marche plus...
Nom alors comme tu m'as dis, j'ai bien trois champs, avec les noms d'instance name_txt, mail_txt et body_txt. J'ai vérifié ils ont bien ces noms, ce n'est pas le problème.
Voici le code que j'ai sur la frame ou mon formulaire est:
Code :
|
J'ai modifié un peu tes fonctions de onSetFocus. Je doute que le problème vient de là, mais on ne sait jamais.
Voici le code que j'ai dans le fichier script_mail.php qui se trouve dans le même repertoire que le fichier swf:
Code :
|
Je suis désolé de te redemander de l'aide, c'est que ce matin g enfin terminé mon site, j'upload la version finale sur mon serveur, et question de vérifier que tout marche bien, j'essaye mon formulaire d'envoie, et je ne recois rien!!!! Une fois ce bug reglé, je pourrai enfin avoir terminé mon site. Du moins d'ici à ce qu'il y ai des updates.
Merci, Carl
Marsh Posté le 19-01-2008 à 22:25:35
Je viens de faire un trace de la variable envoie à la toute fin du code, quand le fichier php est appelé, et il me retourne:
Code :
|
donc les infos sont bien envoyées du côté de flash, je soupsonne que le probléme est dans le fichier script_mail.php, mais bon je vais attendre de voir si quelqu'un à une réponse.
Merci
Marsh Posté le 16-01-2008 à 05:57:29
Bonjours, je réalise en ce moment mon portfolio personnel, et je voulais mettre un formulaire perméttant à l'internaute de m'envoyer un email directement de mon site sans avoir à utiliser outlook ou tout autre programme du genre. J'ai suivit un tutoriel me perméttant de faire ce que je cherchais à faire
(voici l'adresse:http://www.kirupa.com/developer/ac [...] _email.htm)
Cependant, je suis conscient que si le swf n'est pas sur un serveur, l'envoi ne se ferra pas, mais après l'avoir uploadé sur mon serveur, je me rend compte que l'envoie ne se fait jamais. Les fichiers en questions peuvent être trouvés à ces adresses:
fichier swf contenant le formulaire dans la secion contact : http://www.elsantodesigns.com/lalala/version_43.swf
fichier php qui prend la valeur des champs et fait l'envoi avec la méthode POST: http://www.elsantodesigns.com/lalala/email.php
Mon hébergeur est plutot "cheap", (3IX, http://www.3ix.org/) mais ça m'étonnerais beaucoup qu'il ne supporte pas l'envoie de courriels!
En gros, c'est très simple: J'ai un mc nommé form qui contient les champs textes statiques (nom, email, message) et les champs textes input (desolé je ne connais pas l'équivalent en francais). Au input texte Nom la variable nom lui est attachée (dans le champ var), au input texte Email la variable email lui est attachée et au input texte message la variable message lui est attachée. En dehors du mc, sur la scène, un bouton que j'ai simplement pris de la bibliothèque des components qui a sur lui meme le code suivant:
on (release) {
form.loadVariables("email.php", "POST" );
}
Et sur le mc form lui est attaché le code suivant:
onClipEvent(data){
trace("transfert complete" );
this.nom_txt.text = "";
this.email_txt.text = "";
this.message_txt.text = "Message envoyé avec succès!";
}
Le fichier PHP très simple, contient le code suivant:
<?php
$sendTo = "xxxxxx@hotmail.com";
$subject = "El_Santo Designs Contact";
$headers = "From: " . $_POST["nom"];
$headers .= "<" . $_POST["email"] . ">\r\n";
$headers .= "Reply-To: " . $_POST["email"] . "\r\n";
$headers .= "Return-Path: " . $_POST["email"];
$message = $_POST["message"];
mail($sendTo, $subject, $message, $headers);
?>
Or, quand je test mon fichier version_43.swf, rien ne se passe, les champs ne se vident pas et aucun email ne m'est envoyé!
En passant, j'utilise Flash CS3, mais le codage n'est pas en AS3.
Si quelqu'un de meilleur que moi pouvait m'aider, ce serait grandement aprécié! Ça fait plus de 2h que je n'arrive pas à faire marcher ce formulaire et ca me frustre au plus haut point!
Merci beaucoup, Carl