Formulaire Flash AS3 + PHP

Fermé
Signaler
Messages postés
1
Date d'inscription
mercredi 4 mars 2009
Statut
Membre
Dernière intervention
4 mars 2009
-
 renaudsecq -
Bonjour,

Je viens de créer un devis/formulaire sous flash en as3 (pas encore bien habituée) et son homologue en php. Le formulaire en flash envoie bien les données vers le doc php, mais rien en retour, aucun mail sur ma boîte.
Ce n'est le premier formulaire php que je fais par contre c'est la première fois avec de l'as3.
J'ai retourné mon code plusieurs fois et je ne trouve pas le problème...
Si quelqu'un peut me venir en aide...svp...

Action Script:

stop();

for (var i:int=1; i<=5; i++) {
this['qt'+i].restrict="0-9";
}

bouton_total.addEventListener(MouseEvent.CLICK,handlerCalcul);
function handlerCalcul(e:MouseEvent) {

var ListePrix:Array=[0,16.65,17.65,1.50,2.10,6.10];
trace(ListePrix);

var total:Number=0;
for (i=1; i<=5; i++) {
total=total+(Number(this['qt'+i].text)*ListePrix[i]);
}
Champs_Total.text=String(total+(total*5.5)/100);

}
nom.tabIndex = 1;
prenom.tabIndex = 2;
adresse.tabIndex = 3;
codepostal.tabIndex = 4;
ville.tabIndex = 5;
tel.tabIndex = 6;
mail.tabIndex = 7;
date.tabIndex = 8;
demande.tabIndex = 9;
//
qt1.tabIndex = 10;
qt2.tabIndex = 11;
qt3.tabIndex =12;
qt4.tabIndex=13;
qt5.tabIndex=14;
Champs_Total.tabIndex = 42;
txError.tabIndex = 43;

//
bouton.addEventListener(MouseEvent.CLICK,checkFormulaire);
function checkFormulaire(e:MouseEvent) {

trace('yo');

var urlVariables:URLVariables = new URLVariables();
urlVariables.senderName = nom.text;
urlVariables.prenom = prenom.text;
urlVariables.adresse = adresse.text;
urlVariables.codepostal = codepostal.text;
urlVariables.ville= ville.text;
urlVariables.tel= tel.text;
urlVariables.mail= mail.text;
urlVariables.demande= demande.text;
urlVariables.PlateauRepasFormuleSalade = qt1.text;
urlVariables.PlateauRepasFormuleTerrine = qt2.text;
urlVariables.eauminerale1L = qt3.text;
urlVariables.eaugazeuse1L = qt4.text;
urlVariables.vinsyrha = qt5.text;
urlVariables.txError = txError.text;
urlVariables.total= Champs_Total.text;

var url:String = "https://www.pagesjaunes.fr/";

var request:URLRequest = new URLRequest(url);
request.data = urlVariables;

trace("sendToURL: " + request.url + "?" + request.data);
try {
sendToURL(request);
}
catch (e:Error) {

trace(e);
}

trace('SEND');

gotoAndStop(2);
}


Php:

<?php
#
$sendto="moi@monmail.com";

# fonction permettant l'encodage des caractres accentuŽs

$texte =utf8_decode($texte);
$texte =eregi_replace( "\r", "\n", $texte);
$texte =stripcslashes($texte);
return $texte;
}
# fin de la fonction

$nom=$_POST['nom'];
$prenom=$_POST['prenom'];
$adresse=$_POST['adresse'];
$codepostal=$_POST['codepostal'];
$ville=$_POST['ville'];
$tel=$_POST['tel'];
$mail=$_POST['mail'];
$demande=$_POST['demande'];
$qt1=$_POST['qt1'];
$qt2=$_POST['qt2']);
$qt3=$_POST['qt3'];
$qt4=$_POST['qt4'];
$qt5=$_POST['qt5'];
$Champs_Total=$_POST['Champs_Total'];
$txError =$_POST['txError'];


#

# Formating Body content
$FormContent="

-

Nom: $nom\n
prenom: $prenom\n
adresse: $adresse\n
codepostal: $codepostal\n
ville : $ville\n
Le numéro de téléphone: $tel\n
Email: $mail\n
date : $date\n
demande : $demande\n
----------------------------------------------------------------------------\n
qt1 : $qt1\n
qt1 : $qt2\n
qt1 : $qt3\n
qt1 : $qt4\n
qt1 : $qt5\n
Champs_Total: $Champs_Total\n
txError: $txError\n



".urlencode(utf8_encode($FormContent));
mail($sendto, "$Subject (de $prenom $nom)", $FormContent, "From: $mail");

# Autoresponder
$filename = "answer.txt";
$fd = fopen( $filename, "r" );
$contents = fread( $fd, filesize( $filename ) );
fclose( $fd );
mail( "$mail", "Merci de votre envoi - www.monsite.fr", "$contents\n\n",
"From:contact@monsite.fr\n" );

# Flashsignal Variable
#
$signal=1;
echo "signal=$signal";
#

?>




°Merci d'avance°

1 réponse

salut, il me semble que l'email que tu enregistres pour recevoir le mail de ton formulaire doit etre heberge par le serveur ou se trouve ton swf et ton php, personnellement j'ai travaillé avec ton script, et cela fonctionne tres bien!
J'ai remarqué aussi que ça ne marchait pas avec un hotmail ou live!!
tu peux le voir ici: http://mediaflash.free.fr/testphp/4/

je te passe le script que j'ai fait:


AS3:

stop();
// ordre de la tabulation pour les champs de texte
nom.tabIndex = 1;
prenom.tabIndex = 2;
adresse.tabIndex = 3;
ville.tabIndex = 4;
codepostal.tabIndex = 5;
mail.tabIndex = 6;
tel.tabIndex = 7;
objet.tabIndex = 8;
commentaire.tabIndex = 9;
//creation
var urlLoader:URLLoader = new URLLoader();
var urlRequest:URLRequest = new URLRequest("mail4.php");
var variablesMail:URLVariables = new URLVariables();


bouton.addEventListener(MouseEvent.CLICK, envoi);

function envoi(evt:MouseEvent) {

variablesMail.nom = nom.text;
variablesMail.prenom = prenom.text;
variablesMail.adresse = adresse.text;
variablesMail.ville = ville.text;
variablesMail.codepostal = codepostal.text;
variablesMail.mail = mail.text;
variablesMail.tel = tel.text;
variablesMail.commentaire = commentaire.text;
variablesMail.objet = objet.text ;
/*pour que le script fonctionne il faut que l'adresse
mail soit hebergée par le serveur ou se trouve le script,
ça ne marche pas de free vers hotmail!!*/
variablesMail.destinataire = "mediaflash@free.fr";
urlRequest.data = variablesMail;
urlRequest.method = URLRequestMethod.POST;
urlLoader.addEventListener(Event.COMPLETE, donneesChargees);
urlLoader.load(urlRequest);

}

function donneesChargees(evt:Event):void {

gotoAndStop(2);
}

stop();



PHP:

<?php
$expediteur = $_POST['mail'];
$destinataire= $_POST['destinataire'];
$nom = $_POST['nom'];
$destinataire = $_POST['destinataire'];
$objet = $_POST['objet'];
$contenu = $_POST['commentaire'];
$prenom = $_POST['prenom'];
$adresse = $_POST['adresse'];
$ville = $_POST['ville'];
$codepostal = $_POST['codepostal'];
$tel = $_POST['tel'];
function decoder($texte){
$texte = utf8_decode($texte);
$texte = str_replace("\r", "\n", $texte);
$texte = str_replace("\'", "'", $texte);
return $texte;
}

$objet = decoder($objet);
$contenu = decoder($contenu);
$FormContent="

-

Nom: $nom\n
prenom: $prenom\n
adresse: $adresse\n
codepostal: $codepostal\n
ville : $ville\n
Le numéro de téléphone: $tel\n
Email: $mail\n
demande : $contenu\n
".urlencode(utf8_encode($FormContent));

$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/plain; charset=iso-8859-1\r\n";
$headers .= "From: $nom <$expediteur>\r\nReply-to : $nom <$expediteur>\nX-Mailer:PHP";
mail("mediaflash@free.fr",$objet, $FormContent,$headers )

?>
6
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 41989 internautes nous ont dit merci ce mois-ci

oh merci. Fonctione a la perfection.
bonjour,
merci pour ton tuto !
peux tu m'expliquer comment faire pour stocker les données saisies ?
merci !