Comunidad de diseño web y desarrollo en internet online

Duda con formulario flash ayuda!!

Citar            
MensajeEscrito el 22 May 2009 07:42 pm
Bueno quizas es un tema recurrente, no lo se , pero lo que se es que tengo un codigo asignado a un formulario a un boton este es el codigo del boton flash que dice enviar

Código :

on (rollOver) {
   gotoAndStop(2);
   play();
}
on (releaseOutside, rollOut) {
   gotoAndStop(8);
   play();
}
on (release) {
   if (Nombre != "" || Nombre != undefined) {
      if (Empresa != "" || Empresa != undefined) {
         if (Telefono != "" || Telefono != undefined) {
            if (Email != "" || Email != undefined) {
               if (Mensaje != "" || Mensaje != undefined) {
               }
            }
            var form:LoadVars = new LoadVars();
            form.Nombre = Nombre;
            form.Empresa = Empresa;
            form.Telefono = Telefono;
            form.Email = Email;
            form.Mensaje = Mensaje;
            form.send("enviar.php", "_self", "POST");
         } else {
         }
      } else {
         getURL("javascript:alert(\"Falta el E-Mail\")");
      }
   } else {
      getURL("javascript:alert(\"Falta el Nombre\")");
   }
}


el formulario llega pero con un mensaje que dice que estan indefinidos osea llega la variable nombre pero sin nada
Información
Nombre: undefined
Empresa: undefined
Telefono: undefined
Email: undefined
Mensaje: undefined
este es el ejemplo de como me aparecen los correos en la bandeja de entrada , a continuacion dejo el codigo del boton borrar por si les interesa

Código :

on (rollOver) {
   gotoAndStop(2);
   play();
}
on (releaseOutside, rollOut) {
   gotoAndStop(8);
   play();
}
on (release) {
   _parent.Empresa = "";
   _parent.Mensaje = "";
   _parent.Nombre = "";
   _parent.Telefono = "";
   _parent.Email = "";
}


y finalmente el codigo Php

Código :

<?php
if (!$_POST)
{
}
else
{ 
    $cuerpo = "Información\n"; 
    $cuerpo .= "Nombre: "   .$_POST["Nombre"] . "\n"; 
    $cuerpo .= "Empresa: "  .$_POST["Empresa"] . "\n"; 
    $cuerpo .= "Telefono: " .$_POST["Telefono"] . "\n"; 
    $cuerpo .= "Email: "    .$_POST["Email"] . "\n"; 
    $cuerpo .= "Mensaje: "  .$_POST["Mensaje"] . "\n"; 
}
if( mail("[email protected]","Formulario vía web",$cuerpo) ) { 

    echo "Su formulario ha sido enviado satisfactoriamente. Muchas gracias."; 
} 
else 
{ 

echo "Ha ocurrido un error al enviar el formulario"; 
}
?>



alguien sabe por que demonios me llega el correo pelado como lo explique gracis

Por delaron

20 de clabLevel



 

msie8
Citar            
MensajeEscrito el 22 May 2009 11:35 pm
Todo parece indicar que estás trabajando con textos dinámicos con la propiedad de variable, aunque no me gusta esta técnica es válida, lo que debes asegurarte que el nombre de la variable esté puesto en el campo de variable y no en el de nombre de instancia, por otro lado a tus condiciones debes ponerle "and" en vez de "or":

Código ActionScript :

if (Nombre != "" && Nombre != undefined) {

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 25 May 2009 03:59 pm
te agradesco voy aporvar esos cambios y te cuento como me fue muchas gracias por la ayuda ,

Por delaron

20 de clabLevel



 

msie8
Citar            
MensajeEscrito el 25 May 2009 04:54 pm
Lo e probado y me resulta que cuando ingreso los datos y le doy enviar pero me dice que le falta Nombre

Código :

   if (Nombre != "" &&  Nombre != Nombre) {


tambien prove asi

Código :

   if (Nombre != "" &&  nom != Nombre) {


y asi

Código :

   if (Nombre != "" &&  Nombre != undefined) {




esta imagen mas menos da la idea de como tengo eecho el asunto, para ver si me doy a entender mejor

Por delaron

20 de clabLevel



 

msie8
Citar            
MensajeEscrito el 25 May 2009 10:52 pm
Prefiero utilizar nombre de instancia (nom) antes que la propiedad variable (Nombre), lo mejor es eliminar la propiedad variable y utilizar el nombre de instancia y decir solamente:

Código ActionScript :

if(nom.text != ""){

    //---Sigues con tus codigos

}

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 26 May 2009 06:13 pm
e echo lo que me sujeriste

mira lo que si el formulario sigue llegando vacio
vorre el nombre varialble y deje todo segun lo que entendi hasta el php lo cambie te muestro como esta de momento

primero el script del boton enviar:

Código :

 on (release) {
   if(nom.text != ""){ 
      if(t2.text != ""){ 
         if(t5.text != ""){ 
            if(t6.text != ""){ 
               if(t3.text != ""){ 
               }
            }
            var form:LoadVars = new LoadVars();
            form.nom = text;
            form.t2 = text;
            form.t5 = text;
            form.t6 = text;
            form.t3 = text;
            form.send("enviar.php", "_self", "POST");
         } else {
         }
      } else {
         getURL("javascript:alert(\"Falta el E-Mail\")");
      }
   } else {
      getURL("javascript:alert(\"Falta el Nombre\")");
   }
}


y como no tengo mucha idea deje el php asi :

Código :

 <?php
if (!$_POST)
{
}
else
{ 
    $cuerpo = "Información\n"; 
    $cuerpo .= "Nombre: "   .$_POST["text"] . "\n"; 
    $cuerpo .= "Empresa: "  .$_POST["text"] . "\n"; 
    $cuerpo .= "Telefono: " .$_POST["text"] . "\n"; 
    $cuerpo .= "Email: "    .$_POST["text"] . "\n"; 
    $cuerpo .= "Mensaje: "  .$_POST["text"] . "\n"; 
}
if( mail("[email protected]","Formulario vía web",$cuerpo) ) { 

    echo "Su formulario ha sido enviado satisfactoriamente. Muchas gracias."; 
} 
else 
{ 

echo "Ha ocurrido un error al enviar el formulario"; 
}
?>


lo positivo es que llega , lo negativo que llega vacio

Por delaron

20 de clabLevel



 

msie8
Citar            
MensajeEscrito el 26 May 2009 08:05 pm
En AS debes tenerlo de esta forma:

Código ActionScript :

form.nom = nom.text;
form.t2 = t2.text;
form.t5 = t5.text;
form.t6 = t6.text;
form.t3 = t3.text;


Y en el php así

Código PHP :

//---Para capturar las variables enviadas por post
$nombre = $_POST['nom'];
$t2 = $_POST['t2'];

//---Y para enviar estas variables
$cuerpo .= "Nombre: "   .$nombre . "\n"; 
$cuerpo .= "Empresa: "  .$t2 . "\n"; 

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 26 May 2009 10:01 pm

Código :

<?php
if (!$_POST)
{
$nombre = $_POST['nom']; 
$t2 = $_POST['t2'];
$t5 = $_POST['t5'];
$t6 = $_POST['t6'];
$t3 = $_POST['t3']; }
else
{ 
    $cuerpo = "Información\n"; 
    $cuerpo .= "Nombre: "   .$_POST .$nom . . "\n"; 
    $cuerpo .= "Empresa: "  .$_POST .$t2 . . "\n"; 
    $cuerpo .= "Telefono: " .$_POST .$t5 . . "\n"; 
    $cuerpo .= "Email: "    .$_POST .$t6 .. "\n"; 
    $cuerpo .= "Mensaje: "  .$_POST .$t3 . . "\n"; 
}
if( mail("[email protected]","Formulario vía web",$cuerpo) ) { 

    echo "Su formulario ha sido enviado satisfactoriamente. Muchas gracias."; 
} 
else 
{ 

echo "Ha ocurrido un error al enviar el formulario"; 
}
?>


:shock: perdon si entendi mal asi deberia quedar el php? parece parto este formulari :P ^^

Por delaron

20 de clabLevel



 

msie8
Citar            
MensajeEscrito el 27 May 2009 09:19 am
Mira bien mi post y verás que estas dos líneas:

Código PHP :

$cuerpo .= "Nombre: "   .$nombre . "\n";  
$cuerpo .= "Empresa: "  .$t2 . "\n"; 


No son igual a las tuyas:

Código PHP :

$cuerpo .= "Nombre: "   .$_POST .$nom . . "\n"; 
$cuerpo .= "Empresa: "  .$_POST .$t2 . . "\n"; 

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 27 May 2009 03:37 pm
:( elchininet
asi deje el codigo como sujeriste :cry:
pero siguellegando vacio :cry:


Código :

 <?php
if (!$_POST)
{
}
else
{ 
   $cuerpo = "Información\n"; 
    $cuerpo .= "Nombre: "    .$nom . "\n"; 
    $cuerpo .= "Empresa: "   .$t2 . "\n";
    $cuerpo .= "Telefono: "  .$t5 . "\n";
    $cuerpo .= "Email: "     .$t6 . "\n";
    $cuerpo .= "Mensaje: "   .$t3 . "\n";
}
if( mail("[email protected]","Formulario vía web",$cuerpo) ) { 

    echo "Su formulario ha sido enviado satisfactoriamente. Muchas gracias."; 
} 
else 
{ 

echo "Ha ocurrido un error al enviar el formulario"; 
}
?>

llega pero peladao solo con el Nombre Empresa Telefono y demas pero vacio, :shock:

Por delaron

20 de clabLevel



 

msie8
Citar            
MensajeEscrito el 28 May 2009 09:24 am
Claro porque no has realizado lo que te sugerí, tienes unas condicines que no hacen falta y has vuelto a quitar la captura de las variables con los $_POST

Vuleve a mirar esto y realízalo de esta manera, no hace falta ninguna condición para chequear que se han enviado variables por post

elchininet escribió:

En AS debes tenerlo de esta forma:

Código ActionScript :

form.nom = nom.text;
form.t2 = t2.text;
form.t5 = t5.text;
form.t6 = t6.text;
form.t3 = t3.text;


Y en el php así

Código PHP :

//---Para capturar las variables enviadas por post
$nombre = $_POST['nom'];
$t2 = $_POST['t2'];

//---Y para enviar estas variables
$cuerpo .= "Nombre: "   .$nombre . "\n"; 
$cuerpo .= "Empresa: "  .$t2 . "\n"; 

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 30 Jun 2009 05:04 pm
amigo retomo el hilo de este post medio olvidado por que tube problemas de conexión aun asi te cuento que hice los cambios pero nada me a resultado con esto de mandar un formulario desde un flash , y los cambios que me pides no los entiendo muy bien si pudieras colocarlos en el dodigo comleto del php para ubicarme quizas me ubique un poco mas, muchas gracias de todas maneras por ayudarme con este caso
saludos

Por delaron

20 de clabLevel



 

msie8
Citar            
MensajeEscrito el 30 Jun 2009 07:45 pm
@delaron, debes poner un poco de tu parte, intenta leer todo lo posteado y rehacer tu código con lo que te he recomendado, no es una buena práctica en los foros que pidas el código completo para copiar y pegar, el objetivo es que aprendas y apliques.

Si no te sale postea el código final que te resultó, es más fácil encontrar el error en el código resultante.

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 07 Jul 2009 09:35 pm
gracias hare lo que entendi del codigo y lo poesteare gracias

Por delaron

20 de clabLevel



 

msie8
Citar            
MensajeEscrito el 08 Jul 2009 04:27 pm

Código :

<?php
if (!$_POST)
$nom = $_POST['nom'];
$t2 = $_POST['t2'];
$t5 = $_POST['t5'];
$t6 = $_POST['t6'];
$t3 = $_POST['t6'];
{
}
else
{ 
    $cuerpo = "Información\n"; 
    $cuerpo .= "Nombre: "   .$Nombre . "\n"; 
    $cuerpo .= "Empresa: "  .$Empresa  . "\n"; 
    $cuerpo .= "Telefono: " .$Telefono  . "\n";   
    $cuerpo .= "Email: "    .$Email  . "\n";   
    $cuerpo .= "Mensaje: "  .$Mensaje  . "\n";  
}
if( mail("[email protected]","Formulario vía web",$cuerpo) ) { 

    echo "Su formulario ha sido enviado satisfactoriamente. Muchas gracias."; 
} 
else 
{ 

echo "Ha ocurrido un error al enviar el formulario"; 
}
?>


eso es lo que entendi de la contruccion del codigo php me parece que unos parentesis antes del comando ELSE es el problema no lo se con certeza

Por delaron

20 de clabLevel



 

msie8
Citar            
MensajeEscrito el 08 Jul 2009 07:18 pm
Lo primero:

elchininet escribió:

no hace falta ninguna condición para chequear que se han enviado variables por post

Código PHP :

<?php
$nom = $_POST['nom'];
$t2 = $_POST['t2'];
$t5 = $_POST['t5'];
$t6 = $_POST['t6'];
$t3 = $_POST['t6'];


Y lo segundo, este código que te recomendé:

Código PHP :

//---Y para enviar estas variables 
$cuerpo .= "Nombre: "   .$nombre . "\n";  
$cuerpo .= "Empresa: "  .$t2 . "\n";  


No se parece a este:

Código PHP :

$cuerpo .= "Nombre: "   .$Nombre . "\n"; 
$cuerpo .= "Empresa: "  .$Empresa  . "\n"; 


Ya que si observas bien las variables $Nombre y $Empresa no existen en ningun lugar del código por lo tanto no tienen ningún valor. Te debería resultar algo como esto:

Código PHP :

<?php
$nom = $_POST['nom'];
$t2 = $_POST['t2'];
$t5 = $_POST['t5'];
$t6 = $_POST['t6'];
$t3 = $_POST['t6'];

$cuerpo = "Información\n"; 
$cuerpo .= "Nombre: " . $nom . "\n"; 
$cuerpo .= "Empresa: " . $t2 . "\n"; 
$cuerpo .= "Telefono: " . $t5 . "\n";   
$cuerpo .= "Email: " . $t6 . "\n";   
$cuerpo .= "Mensaje: " . $t3 . "\n";  

if( mail("[email protected]", "Formulario vía web", $cuerpo) ) { 
    echo "Su formulario ha sido enviado satisfactoriamente. Muchas gracias."; 
}
else 
{ 
    echo "Ha ocurrido un error al enviar el formulario"; 
}
?>

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 13 Jul 2009 03:06 pm
claro tenias razon la variable estaba mal ingresada lo e echo como decias tu llega el correo pero aun llegan los campos llenos como :Información
Nombre: undefined
Empresa: undefined
Telefono: undefined
Email: undefined
Mensaje: undefined
quizas es el flash el malo

Por delaron

20 de clabLevel



 

msie8
Citar            
MensajeEscrito el 13 Jul 2009 06:31 pm
saben como hacer para q el formulario quede de nuevo vacío cuando el usuario le de clic al botón de enviar????

Por Loop

67 de clabLevel



Genero:Masculino  

safari
Citar            
MensajeEscrito el 13 Jul 2009 10:52 pm
Postea como quedó el código de flash.
En cuanto a tu segunda pregunta, sólo basta que iguales todos los valores de la propiedad "text" de los campos de texto a un string vacío.

Código ActionScript :

nombre_de_instancia_de_tu_texto.text = "";

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 04 Ago 2009 02:28 pm
aquí esta el actual codigo flash

Código ActionScript :

on (rollOver) {
   gotoAndStop(2);
   play();
}
on (releaseOutside, rollOut) {
   gotoAndStop(8);
   play();
}
on (release) {
   if(nom.text != ""){ 
      if(t2.text != ""){ 
         if(t5.text != ""){ 
            if(t6.text != ""){ 
               if(t3.text != ""){ 
               }
            }
            var form:LoadVars = new LoadVars();
            form.nom = nom. text;
            form.t2 = t2.text;
            form.t5 = t5.text;
            form.t6 = t6.text;
            form.t3 = t3.text;
            form.send("enviar.php", "_self", "POST");
         } else {
         }
      } else {
         getURL("javascript:alert(\"Falta el E-Mail\")");
      }
   } else {
      getURL("javascript:alert(\"Falta el Nombre\")");
   }
}

Por delaron

20 de clabLevel



 

firefox
Citar            
MensajeEscrito el 04 Ago 2009 09:04 pm
Primero que todo haz una prueba, chequea que tu botón te lanza el valor que tienen los campos de texto, si te lanza undefined en cada caso, ya sabrás a que se debe que tu php reciba los valores indefinidos:

Código ActionScript :

on (release) { 

    trace("El nombre es: " + nom.text);
    trace("El email es: " + t2.text);
    trace("El t5 es: " + t5.text);
    trace("El t6 es: " + t6.text);
    trace("El t3 es: " + t3.text);

}


Si te lanzan los valores correctamente, entonces pasemos al segundo paso, debes poner el envío de variables en la última condición, sólo chequeas nombre y email y las demás condiciones están hechas por gusto (aunque esta no es la causa de tu error debes probarlo en última instancia):

Código ActionScript :

on (release) { 
   if (nom.text != "") {
      if (t2.text != "") {
         if (t5.text != "") {
            if (t6.text != "") {
               if (t3.text != "") {
                  
                  var form:LoadVars = new LoadVars();
                  form.nom = nom.text;
                  form.t2 = t2.text;
                  form.t5 = t5.text;
                  form.t6 = t6.text;
                  form.t3 = t3.text;
                  form.send("enviar.php", "_self", "POST");
                  
               }else {
                  
                  getURL("javascript:alert('Falta la variable t3')");
                  
               }
               
            }else {
               
               getURL("javascript:alert('Falta la variable t6')");
               
            }
            
         } else {
            
            getURL("javascript:alert('Falta la variable t5')");
            
         }
      } else {
         getURL("javascript:alert('Falta el E-Mail')");
      }
   } else {
      getURL("javascript:alert('Falta el Nombre')");
   }

}

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 05 Ago 2009 08:48 pm
undifined es lo unico que me salen cuando llegan los campos al correo , incluso ago una prueba interna no en linea y se habre el php pero con las rutas indefinidas ejemplo el explorador lo tira asi : enviar.php?t3=undefined&t6=undefined&t5=undefined&t2=undefined&nom=undefined :?

Por delaron

20 de clabLevel



 

firefox
Citar            
MensajeEscrito el 06 Ago 2009 06:38 am
Haz la primera prueba @delaron, no intentes enviar el correo hasta hacer el primer paso que postee de los trace, si estos te lanzan undefined no podrás seguir.

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.