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

Deposito de flas Formulario!

Estas en el tema de Deposito de flas Formulario! en el foro de Flash y Actionscript en Foros del Web. Cita: Iniciado por maltos Formail + Flash 5, MX Bueno este archivo es gracias a cheditas. Contiene dos archivos, un archivo php y un archivo ...
  #1 (permalink)  
Antiguo 28/07/2004, 07:20
 
Fecha de Ingreso: julio-2004
Mensajes: 2
Antigüedad: 13 años, 4 meses
Puntos: 0
Cita:
Iniciado por maltos
Formail

+ Flash 5, MX

Bueno este archivo es gracias a cheditas.

Contiene dos archivos, un archivo php y un archivo .fla, ojo que hay que crear con el fla el html y el swf.

El archivo php no tiene mas configuracion que la siguiente....

$MailTo="[email protected]";

Aqui hay que cambiar la linea por el correo a donde sera enviada la informacion.

Este formmail esta habilitado para recibir las variables...

$subject
$nombre
$apellido
$contenido
$MailFrom

Variables que toma, procesa y envia a la direccion que le especificamos.

Veamos que tiene el fla.

Tiene una funcion borrar...

Código:
function borrar() {
	nombre = "";
	apellido = "";
	MailFrom = "";
	subject = "";
	mensaje = "";
}
Que lo que hace es vaciar cada uno de los campos de texto dejandolos limpios, dicha funcion se dispara al hacer click en el boton borrar.

Una funcion enviar...


function enviar() {
enviar = new LoadVars();
enviar.nombre = nombre;
enviar.apellido = apellido;
enviar.MailFrom = MailFrom;
enviar.subject = subject;
enviar.mensaje = mensaje;
enviar.onLoad = function(success) {
status = "Su Mensaje Fue enviado Correctamente";
borrar();
};
enviar.sendAndLoad("flaform.php", enviar, "POST");
}


El envio de variables se hace con el metodo POST, en metodos anteriores de envio se usaba loadVariables, pero tenia el problema de que o se utilizaba una concatenacion o se enviaban todas las variables, al cambiar esto a la creacion de un objeto LOAD VARS, podemos definis las variables que tiene el objeto LOAD VARS que creamos y enviar los subobjetos que contiene dicho objeto, para este caso se llama enviar.


enviar.onLoad = function(success) {
status = "Su Mensaje Fue enviado Correctamente";
borrar();
};

Esta parte lo que hace es comprobar que ha terminado la respuesta del servidor, especificamente del php y que los datos estan listos para procesase.


Código:
enviar.sendAndLoad("flaform.php", enviar, "POST");
Esta ultima linea hace una peticion de envio y recepcion de informacion, el envio es procesado por el servidor y la recepcion activa el onLoad que efectua las operaciones indicadas.

-----

Verificando la validacion

if (MailFrom.indexOf("@") != -1 && MailFrom.indexOf(".") != -1 && nombre != "" && apellido != "" && mensaje != "") {
enviar();
}

Si nos damos cuenta aparece lo siguiente...

MailFrom.indexOf("@") != -1

indexOf es un derivado de JS que lo que permite es verificar si existe la parte de una cadena dentro de otra, en el caso de que exista regresa un true, pero en el caso de que no sea asi regresa un -1 es por eso que este if comprueba que no regrese un -1 que equivale a que no hay un @ dentro de la direccion email, simbolo que por logica debe de existir, de la misma manera comprueba que exista un punto . ya que todas las direcciones llevan punto

nombre != "" && apellido != "" && mensaje != "")

Esto lo que hace es comprobar que no se hayan dejado en blanco los campos, sin embargo aqui noto que el codigo tiene un error, porque el "" representa que el campo esta vacio pero que ya fue todaco por el cursor, pero cuando el cuadro no ha sido tocado no representa "" sino un null por lo que no seria malo agregar esto....

&& nombre != null && apellido != null && mensaje != null

Bueno eso se los dejo a su criterio.

Espero haber explicado todo este codigo, conste que no lo hice yo, unicamente hice el analisis de como funciona.

Saludos
Arturo Maltos
Hola, he copiado el código para enviar formularios con php y funciona correctamente en flash MX, pero necesito pasarlo a flash 5. ¿Que tengo que cambiar del código para que funcione? ¿tiene algo que ver con la función LoadVars? Te agradecería enormemente que me ayudaras. Un saludo.
  #2 (permalink)  
Antiguo 29/07/2004, 03:52
 
Fecha de Ingreso: julio-2004
Mensajes: 2
Antigüedad: 13 años, 4 meses
Puntos: 0
Hola:

He probado tu código de formulario enviado via mail por php y me funciona en flash mx pero no en flash 5. ¿Tengo que cambiar algo del código? Espero que puedas ayudarme. Chao.
  #3 (permalink)  
Antiguo 30/07/2004, 11:46
Avatar de TMeister
Crazy Coder
 
Fecha de Ingreso: enero-2002
Ubicación: En la Oficina
Mensajes: 2.880
Antigüedad: 15 años, 11 meses
Puntos: 193
Preguntas referentes al deposito de Fla's por favor hazlas en el foro general

Saludos!!
  #4 (permalink)  
Antiguo 30/07/2004, 11:48
Avatar de TMeister
Crazy Coder
 
Fecha de Ingreso: enero-2002
Ubicación: En la Oficina
Mensajes: 2.880
Antigüedad: 15 años, 11 meses
Puntos: 193
Ahora respondiendo a tu pregunta el objeto LoadVars() no esta disponible en la version % de Flash, para enviar y recibir variables debes usar loadVariables

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




La zona horaria es GMT -6. Ahora son las 07:25.