Foros del Web » Creando para Internet » Flash y Actionscript »

Ayuda Formulario Correo Flash + PHP

Estas en el tema de Ayuda Formulario Correo Flash + PHP en el foro de Flash y Actionscript en Foros del Web. Hola estoy usando Flash CS4 AS2.0 y tengo este codigo que saque de este link forosdelweb.com/f16/formulario-flash-495762 de aqui mismo.. le modifique un poco pero me ...
  #1 (permalink)  
Antiguo 27/07/2009, 16:17
 
Fecha de Ingreso: junio-2009
Mensajes: 20
Antigüedad: 11 años, 4 meses
Puntos: 0
Exclamación Ayuda Formulario Correo Flash + PHP

Hola estoy usando Flash CS4 AS2.0 y tengo este codigo que saque de este link forosdelweb.com/f16/formulario-flash-495762 de aqui mismo.. le modifique un poco pero me sale este error: "El tipo de la declaracion de asignacion no coincide: se encontro LoadVars donde se requiere Function" y me manda al renglo donde tengo "Enviar = new LoadVars();"

function Borrar()
{
Nombre = "";
Telefono = "";
Correo = "";
Mensaje = "";
}
function Enviar() {
Enviar = new LoadVars();
Enviar.Nombre = Nombre;
Enviar.Telefono = Telefono;
Enviar.Correo = Correo;
Enviar.Mensaje = Mensaje;
Enviar.onLoad = function(success) {
status = "Su Mensaje Fue enviado Correctamente";
Borrar();
};
Enviar.sendAndLoad("flaform.php", Enviar, "POST");
}
Borrar();
  #2 (permalink)  
Antiguo 27/07/2009, 16:37
Avatar de gVenom  
Fecha de Ingreso: julio-2008
Ubicación: Costa Rica
Mensajes: 1.458
Antigüedad: 12 años, 4 meses
Puntos: 53
Respuesta: Ayuda Formulario Correo Flash + PHP

Puede ser que al loadvars le asignas mal el valor:

function Enviar() {
Enviar = new LoadVars();
Enviar.Nombre = Nombre;
Enviar.Telefono = Telefono;
Enviar.Correo = Correo;
Enviar.Mensaje = Mensaje;


function Enviar() {
Enviar = new LoadVars();
Enviar.Nombre = Nombre.text;
Enviar.Telefono = Telefono.text;
Enviar.Correo = Correo.text;;
Enviar.Mensaje = Mensaje.text;


si es que recibe el valor de un campo de txt que es lo mas logico
__________________
"Al que venciere y guardare mis obras hasta el fin, yo le daré autoridad sobre las naciones."
Apocalipsis 2: 26
Servicios para Pymes http://dst.co.cr
  #3 (permalink)  
Antiguo 27/07/2009, 16:40
 
Fecha de Ingreso: junio-2009
Mensajes: 20
Antigüedad: 11 años, 4 meses
Puntos: 0
Respuesta: Ayuda Formulario Correo Flash + PHP

Ya le puse el ; adicional que este en tu codigo pero sigue diciendome el mismo error :(
  #4 (permalink)  
Antiguo 27/07/2009, 16:41
 
Fecha de Ingreso: junio-2009
Mensajes: 20
Antigüedad: 11 años, 4 meses
Puntos: 0
Respuesta: Ayuda Formulario Correo Flash + PHP

Y al que venza y observe mis hechos hasta el fin, le daré autoridad sobre las naciones!! =D
  #5 (permalink)  
Antiguo 27/07/2009, 16:43
 
Fecha de Ingreso: junio-2009
Mensajes: 20
Antigüedad: 11 años, 4 meses
Puntos: 0
Respuesta: Ayuda Formulario Correo Flash + PHP

Bueno estoy usando AS2.0 no se si este codigo sea compatible
  #6 (permalink)  
Antiguo 27/07/2009, 16:45
Avatar de gVenom  
Fecha de Ingreso: julio-2008
Ubicación: Costa Rica
Mensajes: 1.458
Antigüedad: 12 años, 4 meses
Puntos: 53
Respuesta: Ayuda Formulario Correo Flash + PHP

Tengo un correo que es el que uso, trabaja bien, si mañana andas por ahi te lo paso, esque ahorita ya me debo ir, pero mañana si te conectas te lo paso.
__________________
"Al que venciere y guardare mis obras hasta el fin, yo le daré autoridad sobre las naciones."
Apocalipsis 2: 26
Servicios para Pymes http://dst.co.cr
  #7 (permalink)  
Antiguo 27/07/2009, 16:46
Avatar de gVenom  
Fecha de Ingreso: julio-2008
Ubicación: Costa Rica
Mensajes: 1.458
Antigüedad: 12 años, 4 meses
Puntos: 53
Respuesta: Ayuda Formulario Correo Flash + PHP

Tengo un correo que es el que uso, trabaja bien, si mañana andas por ahi te lo paso, esque ahorita ya me debo ir, pero mañana si te conectas te lo paso.
__________________
"Al que venciere y guardare mis obras hasta el fin, yo le daré autoridad sobre las naciones."
Apocalipsis 2: 26
Servicios para Pymes http://dst.co.cr
  #8 (permalink)  
Antiguo 27/07/2009, 16:49
 
Fecha de Ingreso: junio-2009
Mensajes: 20
Antigüedad: 11 años, 4 meses
Puntos: 0
Respuesta: Ayuda Formulario Correo Flash + PHP

Ok... Gracias =D Nos vemos Mañana !!
  #9 (permalink)  
Antiguo 28/07/2009, 08:46
Avatar de gVenom  
Fecha de Ingreso: julio-2008
Ubicación: Costa Rica
Mensajes: 1.458
Antigüedad: 12 años, 4 meses
Puntos: 53
Mensaje Respuesta: Ayuda Formulario Correo Flash + PHP

Primero trabajaremos el Fla:
Creamos
una nueva película, sobre el escenario creamos 4 campos de texto de
entrada InputText y les damos nombre de instancia, y creamos 2 botones "enviar_btn" y "borrar_btn"
Crearemos
2 funciones una para enviar las variables a PHP y otra función para
borrar los datos del formulario

Función enviar:

Código AS:
Ver original
  1. enviar = function () {
  2.     if (email_txt.text.length && name_txt.length && phone_txt.length && msj_txt.length) {
  3.         if (email_txt.text.indexOf("@") != -1 && email_txt.text.indexOf(".") != -1) {
  4.             form_lv = new LoadVars();
  5.             form_lv.name = name_txt.text;
  6.             form_lv.address = address_txt.text;
  7.             form_lv.city = city_txt.text;
  8.             form_lv.phone = phone_txt.text;
  9.             form_lv.email = email_txt.text;
  10.             form_lv.msj = msj_txt.text;
  11.            
  12.             form_lv.sendAndLoad("http://blessingwave.org/send.php", form_lv, "POST");
  13.             msj_txt.text = "Sending Message..";
  14.             name_txt.text = "";
  15.             address_txt.text = "";
  16.             city_txt.text = "";
  17.             phone_txt.text = "";
  18.             email_txt.text = "";
  19.             form_lv.onLoad = function() {
  20.                 if (this.estatus == "ok") {
  21.                     msj_txt.text = "Your message has been sent successfully...";
  22.                     name_txt.text = "";
  23.                     address_txt.text = "";
  24.                     city_txt.text = "";
  25.                     phone_txt.text = "";
  26.                     email_txt.text = "";
  27.                 } else {
  28.                     msj_txt.text = "There was a problem sending your email, please try again";
  29.                 }
  30.             };
  31.         } else {
  32.             email_txt.text = "Email Invalid";
  33.         }
  34.     } else {
  35.         email_txt.text = "Data Needed";
  36.         name_txt.text = "Data Needed";
  37.         address_txt.text = "Data Needed";
  38.         city_txt.text = "Data Needed";
  39.         phone_txt.text = "Data Needed";
  40.         msj_txt.text = "Data Needed";
  41.     }
  42. };


Código as:
Ver original
  1. if (email_txt.text.length && nombre_txt.length && titulo_txt.length && mensaje_txt.length)

Con esto comprobamos que al presionar el boton todos los campos de texto no
estén vacíos, si esta condición no se cumple en los campos
aparecerá el texto "Dato Necesario";

Código as:
Ver original
  1. if (email_txt.text.indexOf("@") != -1 && email_txt.text.indexOf(".") != -1) {

Esta comprobación revisa que el mail introducido tenga la @ y
un punto .;
Si ambas condiciones son ciertas creamos una instancia de la clase LoadVars
y asignamos variables para enviar a PHP


Código as:
Ver original
  1. form_lv_lv = new LoadVars();
  2. form_lv.nombre = nombre_txt.text;
  3. form_lv.mail = email_txt.text;
  4. form_lv.mensaje = mensaje_txt.text;
  5. form_lv.titulo = titulo_txt.text;
  6. form_lv.sendAndLoad("send.php", form_lv, "POST");
  7.     mensaje_txt.text = "Enviando Mensaje..";
  8. }

Una vez ejecutado el Script PHP y si todo salio bien, este, regresara una variable
llamada status que tomaremos con el evento onLoad

Código as:
Ver original
  1. form_lv.onLoad = function() {
  2.                 if (this.estatus == "ok") {
  3.                     mensaje_txt.text = "Tu mensaje fue enviado. nGracias.... =)";
  4.                     nombre_txt.text = " ";
  5.                     email_txt.text = " ";
  6.                     titulo_txt.text = " ";
  7.                 } else {
  8.                     mensaje_txt.text = "Problemas con el servidornIntentalo de Nuevo";
  9.                 }
  10.             };

Función borrar:
Con esta función solo borraremos los datos que tengan los campos de texto.

Código as:
Ver original
  1. borrar = function () {
  2.     nombre_txt.text = " ";
  3.     email_txt.text = " ";
  4.     mensaje_txt.text = " ";
  5.     titulo_txt.text = " ";
  6. };
Esto no necesita mucha explicación =P
Por ultimo asignamos dichas funciones a los eventos de los botones
Código as:
Ver original
  1. enviar_btn.onRelease = enviar;
  2.   borrar_btn.onRelease = borrar;

esto si los botones y los input text están en el mismo nivel, pero si los botones están por ejm dentro de un mc (por motivo de animación) entonces el botón de borrar iria así:

Código as:
Ver original
  1. on (release) {
  2.     _parent.name_txt.text = "";
  3.     _parent.address_txt.text = "";
  4.     _parent.city_txt.text = "";
  5.     _parent.phone_txt.text = "";
  6.     _parent.email_txt.text = "";
  7.     _parent.msj_txt.text = "";
  8. }

Y el de envio así:

Código as:
Ver original
  1. on (release){
  2.     _parent.enviar();
  3. }
Esto aplicando el código directamente a los botones.

Seguimos con el PHP..
Código PHP:
<?php 
if(isset($_POST["name"]) && isset($_POST["phone"]) && isset($_POST["email"]) && isset($_POST["msj"]) ){ 
            
$fecha date("d-M-y H:i"); 
            
$mymail "[email protected]"
            
$subject "Formulario de contacto"
            
$contenido "name: ".$_POST["name"]."\nDireccion: "
            
$contenido .= $_POST["address"]."\nCiudad: "
            
$contenido .= $_POST["city"]."\nTelefono: "
            
$contenido .= $_POST["phone"]."\nMensaje: "
            
$contenido .= $_POST["msj"]."\n\n"
            
$contenido .= "el mensaje se escribio el ".$fecha
            
$header "From:".$_POST["name"]."<".$_POST["email"].">"."\nReply-To:".$_POST["email"]."\n"
            
$header .= "X-Mailer:PHP/".phpversion()."\n"
            
$header .= "Mime-Version: 1.0\n"
            
$header .= "Content-Type: text/plain"
            
mail($mymail$subjectutf8_decode($contenido) ,$header); 
            echo 
"&estatus=ok&"

?>
La función isset verifica que una variable exista, en este caso verificamos
que las cuatro variables existan antes de enviar el mail.
Los parámetros de la función mail de PHP son:
• Para: Correo destino. En este caso $mymail
• Titulo: Titulo del Correo. En este caso $subject
• Mensaje: Cuerpo del correo. En este caso $contenido
• Headers o cabeceras: Son las cabeceras del correo, donde se especifica
el tipo de contenido (texto plano, texto HTML), entre muchas otras opciones
que no mencionare.
Una vez enviado el mail el PHP regresa la variable status que Flash interpretara…
Si dicha variable existe es que todo funcióno… =)

Espero te sirva
__________________
"Al que venciere y guardare mis obras hasta el fin, yo le daré autoridad sobre las naciones."
Apocalipsis 2: 26
Servicios para Pymes http://dst.co.cr
  #10 (permalink)  
Antiguo 28/07/2009, 09:40
 
Fecha de Ingreso: junio-2009
Mensajes: 20
Antigüedad: 11 años, 4 meses
Puntos: 0
Respuesta: Ayuda Formulario Correo Flash + PHP

Muchas Gracias gVenom... En este momento tengo una salida pero regresando checo el codigo, te agradesco la molestia que te tomaste en ayudarme =D

Saludos!!!
  #11 (permalink)  
Antiguo 29/07/2009, 09:46
 
Fecha de Ingreso: junio-2009
Mensajes: 20
Antigüedad: 11 años, 4 meses
Puntos: 0
Respuesta: Ayuda Formulario Correo Flash + PHP

Hola gVenom... use el codigo que me diste y para el boton Borrar no me funciona si mi funcion borrar esta como me la diste asi que la cambie y me funciono... Para lo de enviar no me esta funcionando, le pico al boton enviar y no me muestra que hay campos sin llenar, no me hace nada ese codigo, no se si necesito poner primero el php en mi servidor, no lo he puesto por que no me dijiste que nombre ponerle al archivo php =P

Gracias!! Saludos
  #12 (permalink)  
Antiguo 29/07/2009, 11:10
Avatar de gVenom  
Fecha de Ingreso: julio-2008
Ubicación: Costa Rica
Mensajes: 1.458
Antigüedad: 12 años, 4 meses
Puntos: 53
Respuesta: Ayuda Formulario Correo Flash + PHP

perdon, el archivo se llama send.php

Cita:
form_lv.sendAndLoad("send.php", form_lv, "POST");
el codigo es 100% funcional, el php debe estar en la misma carpeta que el flash y el AS debe ir en un layer aparte, en el mismo nivel que los campos de texto del form
__________________
"Al que venciere y guardare mis obras hasta el fin, yo le daré autoridad sobre las naciones."
Apocalipsis 2: 26
Servicios para Pymes http://dst.co.cr
  #13 (permalink)  
Antiguo 29/07/2009, 11:21
 
Fecha de Ingreso: junio-2009
Mensajes: 20
Antigüedad: 11 años, 4 meses
Puntos: 0
Respuesta: Ayuda Formulario Correo Flash + PHP

Haaa Ok... eso de en un layer aparte pero en el mismo nivel no lo sabia... lo estaba poniendo en el mismo layer, Muchas Gracias por las molestias =D

Saludos !!!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 11:04.