Formulaire mail sur flash - l'envoie fonctionne 1 fois sur 2 ?!
tartartartar
Messages postés27Date d'inscriptionvendredi 19 août 2011StatutMembreDernière intervention15 décembre 2013
-
8 juil. 2012 à 12:18
tartartartar
Messages postés27Date d'inscriptionvendredi 19 août 2011StatutMembreDernière intervention15 décembre 2013
-
8 nov. 2012 à 23:42
Bonjour,
Je ne comprends pas pourquoi l'envoie s'effectu une fois sur deux lorsque je rempli mon formulaire ?! Auparavant cela fonctionnait tout le temps, mon hébergeur a fait une mise à jour, depuis il me met une fois sur deux echec ?! je vous mets les codes ci dessous :
dans flash :
import fl.managers.StyleManager;
StyleManager.setStyle("textFormat", new TextFormat("Segoe Script", 16, 0x000080));
const SENDING:String = "Sending";
const SENT_SUCCESS:String = "Successful";
const SENT_FAILED:String = "Unsuccessful";
var tmr:Timer;
function resetTextFields():void
{
name_txt.text = "";
email_txt.text = "";
message_txt.text = "";
}
function resetContactForm():void
{
submit_btn.enabled = true;
feedback_mc.visible = false;
clearErrors();
}
function afterTmrWait(evt:TimerEvent):void
{
tmr.stop();
tmr.removeEventListener(TimerEvent.TIMER, afterTmrWait);
resetContactForm();
removeEventListener(Event.ENTER_FRAME,btnRetourSousdoss);
gotoAndPlay(10);
}
function validateEmail(str:String):Boolean
{
var pattern:RegExp = /((\w|[_.\-])+@((\w|-)+\.)+\w{2,4}+)|^$/;
var result:Object = pattern.exec(str);
if (result == null)
{
return false;
}
return true;
}
function submitForm(evt:MouseEvent):void
{
clearErrors();
var passChecks:Boolean = true;
if (name_txt.text.length < 1)
{
nameError_mc.visible = true;
passChecks = false;
}
if (! validateEmail(email_txt.text))
{
emailError_mc.visible = true;
passChecks = false;
}
if (message_txt.text.length < 1)
{
messageError_mc.visible = true;
passChecks = false;
}
if (passChecks)
{
submit_btn.enabled = false;
feedback_mc.visible = true;
feedback_mc.gotoAndStop(SENDING);
var urlVars:URLVariables = new URLVariables();
var urlReq:URLRequest = new URLRequest("send_email.php");
var ldr:URLLoader = new URLLoader();
urlVars.name = name_txt.text;
urlVars.email = email_txt.text;
urlVars.message = message_txt.text;
urlReq.data = urlVars;
urlReq.method = URLRequestMethod.POST;
ldr.addEventListener(Event.COMPLETE, serverFeedback);
ldr.load(urlReq);
}
}
function serverFeedback(evt:Event):void
{
var ldr:URLLoader = evt.target as URLLoader;
var urlVars:URLVariables = new URLVariables(ldr.data);
if (urlVars.result == SENT_SUCCESS)
{
feedback_mc.gotoAndStop(SENT_SUCCESS);
resetTextFields();
tmr = new Timer(3000,1);
tmr.addEventListener(TimerEvent.TIMER, afterTmrWait);
tmr.start();
}
else if (urlVars.result == SENT_FAILED)
{
feedback_mc.gotoAndStop(SENT_FAILED);
submit_btn.enabled = true;
}
}
function clearErrors():void
{
nameError_mc.visible = false;
emailError_mc.visible = false;
messageError_mc.visible = false;
}
submit_btn.addEventListener(MouseEvent.CLICK, submitForm);
resetTextFields();
resetContactForm();