Formulaire Flash AS3 + PHP

zerogne Messages postés 1 Statut Membre -  
 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°
A voir également:

1 réponse

tranber
 
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
nanot
 
oh merci. Fonctione a la perfection.
0
renaudsecq
 
bonjour,
merci pour ton tuto !
peux tu m'expliquer comment faire pour stocker les données saisies ?
merci !
0