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

Ayuda con formulario

Estas en el tema de Ayuda con formulario en el foro de Flash y Actionscript en Foros del Web. Por favor necesito ayuda con un formulario que no se deja, en este momento el formulario envia la instuccion al php y este manda el ...
  #1 (permalink)  
Antiguo 12/06/2008, 19:37
 
Fecha de Ingreso: junio-2008
Mensajes: 3
Antigüedad: 9 años, 6 meses
Puntos: 0
Ayuda con formulario

Por favor necesito ayuda con un formulario que no se deja, en este momento el formulario envia la instuccion al php y este manda el correo, el problema es que al parecer solo envia la instruccion de que envie un correo y no pasa la info recabada en el flash, osea que me llega el correo pero vacio, este es el codigo del flash.

Cita:
on (release) {
if (!Nombre.length) {//Verifica que el campo nombre no este vacio.
EmailStatus = "Introduzca su nombre antes del envio";//Si esta vacio avisa en el campo EmailStatus.
} else if (!Email.length) {//Verifica que el campo correo no este vacio.
EmailStatus = "Porfavor introduzca una direccion de correo";//Y avisa en el campo EmailStatus.
} else if (!Email.length || Email.indexOf("@") == -1 || Email.indexOf(".") == -1) {//Parece una redundancia, pero si no no funciona. Verifica que el campo correo contenga una @ y un .
EmailStatus = "Porfavor introduzca una direccion de correo valida";//Y avisa en el campo EmailStatus.
} else if (!Comentarios.length) {//Verifica el campo de los comentarios.
EmailStatus = "Sus comentarios son importantes para nosotros";//Si esta vacio avisa en el campo EmailStatus
} else {
loadVariablesNum("../sendmail.php", "0", "POST");//Pasa los datos al Php.
EmailStatus = "";//Limpia el campo de estado
gotoAndPlay(18);
//Pone en marcha la animacion para detectar el envio y borrar los campos
}
}
AYUDA PORFAVOR!!
  #2 (permalink)  
Antiguo 13/06/2008, 05:47
 
Fecha de Ingreso: abril-2008
Mensajes: 613
Antigüedad: 9 años, 7 meses
Puntos: 22
Respuesta: Ayuda con formulario

Hola,
deberías utilizar "loadVars" en vez de "loadVariablesNum".
Con loadVars deberías utilizar "sendAndload" para poder recibir en FLash los datos que pudiera devolverte PHP.
El que tienes no funciona porque parece que no estás enviando ninguna variable al PHP.
Con loadVars, puedes enviar variables con la siguiente sintaxis:
miloadvars.mivariable="loquesea";
Luego, en PHP recoges la variable "loquesea" y montas el mail.
Tienes toda la referencia del objeto "loadVars" en la ayuda de FLASH.

Saludos
__________________
Compartir es vivir
www.programador-php.com
  #3 (permalink)  
Antiguo 13/06/2008, 12:19
 
Fecha de Ingreso: junio-2008
Mensajes: 3
Antigüedad: 9 años, 6 meses
Puntos: 0
Respuesta: Ayuda con formulario

Muchas gracias por tu ayuda, si al final opte por cambiar el codigo, ya que ese no me llevaba a nada, y ya funciona a la perfeccion.

pero ahora me surgio una duda mas jejeje y bueno supongo que esta es mas sencilla, pero por mas que le busco no encuentro, y esto es que cuendo presiono el boton de enviar me gustaria que saliera un mensaje de "su info fue enviada" pero no encuentro como, trate de ponerle un goto al final del scrip pero no funciona, trate con varias formulas en otros fotogramas pero nada. pongo el codigo haber si alguien me puede decir donde poner la instruccion para que vaya al fotograma de agradecimiento

Cita:
var contact_php_file = "enviarform.php";

send_btn.onRelease = function() {
checkForm();
}

function validateEmail(address) {
// Check address length
if(address.length >= 7) {
// Check for an @ sign
if(address.indexOf("@") > 0) {
// Check for at least 2 characters following the @
if((address.indexOf("@") + 2)<address.lastIndexOf(".")) {
// Check for a domain name of at least 2 characters
if (address.lastIndexOf(".") < (address.length - 2)) {
// If all the above tests pass, the email address is in valid format
return true;
}
}
}
}
// Called if the email fails
trace("The entered email address is invalid.");
return false;
}

function checkForm() {
n = form.name_txt.text;
t = form.tel_txt.text;
e = form.email_txt.text;
m = form.msg_txt.text;
if(m != "" && e != "" && validateEmail(e)) {
sendEmail(n, t, e, m);
} else {
trace("All Required Fields Not Filled In!");
}
}

function sendEmail(n, t, e, m) {
session = "?nocache=" + random(999999);
contact_lv = new LoadVars();
contact_lv.name = n;
contact_lv.tel = t;
contact_lv.email = e;
contact_lv.message = m;
contact_lv.key = "email";
trace(n + " - " + t + " - " + e + " - " + m);
contact_lv.sendAndLoad(contact_php_file + session, contact_lv, "POST");
contact_lv.onLoad = function(success) {
if(!success) {
return trace("Error calling PHP File!");
} else {
return trace("Email Sent!");
}
}
}

play();
  #4 (permalink)  
Antiguo 13/06/2008, 15:58
 
Fecha de Ingreso: abril-2008
Mensajes: 613
Antigüedad: 9 años, 7 meses
Puntos: 22
Respuesta: Ayuda con formulario

Hola,
En la línea donde tienes:
return trace("Error calling PHP File!");

PONES:

getURL("javascript:alert('Su info fue enviada')");

Esto tlanzará un alert de JAVASCRIPT.
Si quieres otra cosa, pues se la pones en su sitio.

Saludos
__________________
Compartir es vivir
www.programador-php.com
  #5 (permalink)  
Antiguo 15/06/2008, 11:40
 
Fecha de Ingreso: junio-2008
Mensajes: 3
Antigüedad: 9 años, 6 meses
Puntos: 0
Respuesta: Ayuda con formulario

Exangel, gracias por tu respuesta, intente como me dices pero no hizo ninguna diferencia no aparecion ningun mensaje se quedo exactamente igual, espero tengan alguna otro sugerencia

Gracias
  #6 (permalink)  
Antiguo 15/06/2008, 17:52
 
Fecha de Ingreso: abril-2008
Mensajes: 613
Antigüedad: 9 años, 7 meses
Puntos: 22
Respuesta: Ayuda con formulario

¿Has probado a poner el código que te decía en la línea siguente?

return trace("Email Sent!");

Se trata de saberen si recibes algo, si sustituyes esa línea por el ALERT, puede que sepamos algo más ya que lo anterior que te indicaba era para el mensaje de error.
__________________
Compartir es vivir
www.programador-php.com
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




La zona horaria es GMT -6. Ahora son las 06:33.