1. En el fotograma 1 paro la pelicula y muestro un formulario. El formulario consta de los siguientes campos:
textinput: nombre_txt
textinput: email_txt
textarea: idea_txt
boton: enviar_btn
Codigo del boton:
Código :
on (release) {
play();
}
2. Cuando pulso el boton se reanuda la pelicula para mostrar una animacion que va del fotograma "inicio" (2) al fotograma 31. En el fotograma 15 de la pelicula inserto el siguiente codigo:
Código :
var envio_lv:LoadVars = new LoadVars();
var recibir_lv:LoadVars = new LoadVars();
function enviarMail() {
envio_lv.nombre = nombre_txt.text;
envio_lv.email = email_txt.text;
envio_lv.idea = idea_txt.text;
envio_lv.sendAndLoad("form.php", recibir_lv, "post");
}
///////////////////////////////////
enviarMail();
Una vez llega al fotograma 31, comprueba los datos recibidos del codigo php y comprueba que los datos son correctos. Si son correctos manda al fotograma "enviado" si hay alguno incorrecto lo manda al fotograma "error".
Código :
recibir_lv.onLoad = function(exito) {
if (exito) {
errornombre_txt.text = this.errornombre;
erroremail_txt.text = this.erroremail;
erroridea_txt.text = this.erroridea;
}
};
if ((errornombre = "") && (erroremail = "") && (erroridea = "")) {
gotoAndPlay ("enviado");
}else{
gotoAndPlay ("error");
}
3. En el fotograma "error" se reproduce una animacion. Al final de la animacion paro la pelicula, muestro el formulario inicial con sus correspondientes datos ya inscritos y ademas creo 3 campos de texto dinamicos: errornombre_txt, erroremail_txt y erroridea_txt. En estos campos se muestra un "*" si hay algun error en el campo al que correspondan.
4. Cuando vuelvo a pulsar el boton de envio reanuda la pelicula desde el final de la animacion del error. En el ultimo fotograma de la pelicula existe el siguiente codigo:
Código :
gotoAndPlay ("inicio")
De esta manera vuelvo a validar los campos.
El codigo del archivo php (form.php) que valida los campos es el siguiente:
Código :
<?
$nombre = $_POST["nombre"];
$email = $_POST["email"];
$idea = $_POST["idea"];
$error = 0;
function comprobar_email($email)
{
$mail_correcto = 0;
if ((strlen($emaill) >= 6) && (substr_count($emaill,"@") == 1) && (substr($emaill,0,1) != "@") && (substr($emaill,strlen($emaill)-1,1) != "@"))
{
if ((!strstr($emaill,"'")) && (!strstr($emaill,"\"")) && (!strstr($emaill,"\\")) && (!strstr($emaill,"\$")) && (!strstr($emaill," ")))
{
if (substr_count($emaill,".")>= 1)
{
$term_dom = substr(strrchr ($emaill, '.'),1);
if (strlen($term_dom)>1 && strlen($term_dom)<5 && (!strstr($term_dom,"@")))
{
$antes_dom = substr($emaill,0,strlen($emaill) - strlen($term_dom) - 1);
$caracter_ult = substr($antes_dom,strlen($antes_dom)-1,1);
if ($caracter_ult != "@" && $caracter_ult != ".")
{
$mail_correcto = 1;
}
}
}
}
}
}
if ($nombre == '') {
echo" errornombre=*";
$error=1;
}
if (!comprobar_email($email)) {
echo" erroremail=*";
$error=1;
}
if ($idea == '') {
echo" erroridea=*";
$error=1;
}
if ($error==0){
$destinatario = "[email protected]";
$asunto = "Mensaje DeltaIdeas";
$cuerpo = '';
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
$headers .= "From: $email\r\n";
mail($destinatario, $asunto, $cuerpo, $headers);
}
?>
Y eso es todo.
El problema es que siempre me manda al fotograma "error" y no me manda el mail aunque para php los campos sean correctos.
Un saludo y muchas gracias