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

Ayuda con Formulario mail Php en Flash

Estas en el tema de Ayuda con Formulario mail Php en Flash en el foro de Flash y Actionscript en Foros del Web. Hola. Tengo un problema con un formulario de mail con PHP hecho con flash. La pagina que estoy haciendo es http://www.other-side.com.ar realice un formulario para ...
  #1 (permalink)  
Antiguo 29/07/2008, 21:45
Avatar de PsychoGus  
Fecha de Ingreso: julio-2008
Mensajes: 5
Antigüedad: 9 años, 5 meses
Puntos: 0
Información Ayuda con Formulario mail Php en Flash

Hola.

Tengo un problema con un formulario de mail con PHP hecho con flash.
La pagina que estoy haciendo es http://www.other-side.com.ar realice un formulario para mail pero no funciona.
Cuando uso el archivo swf en mi Pc la comprobación de las funciones (tanto del fla como del send.php) andan, pero al subirlas al servidor y querer enviar un mail la pagina se queda un largo tiempo en el estado de “conectando con el servidor” y el mail nunca me llega.
El servicio que tiene contratado la banda tiene la funcion de php.

Aca les envio la programación de los dos para ver si pueden ayudarme a que funcione, se que puede ser tedioso para ustedes, pero yo llegue a un punto en que ya no se que hacer y no le encuentro el error.


FLASH (archivo fla)
Como podran ver en www.other-side.com.ar tengo el formulario con “nombre”, “mail”, “motivo” y consulta” y el boton “enviar”


1) La funcion del boton enviar es:
on(release)

{

enviar();

}



2) la funcion del archivo fla para el formulario es la siguiente:
import mx.controls.Alert;

import mx.controls.Alert;

stop();

txt_nombre = '';

txt_email = '';

txt_motivo = '';

txt_consulta = '';



limpiar_contenido = function () {

txt_nombre = '';

txt_email = '';

txt_motivo = '';

txt_consulta = '';

}



enviar = function ()

{

if (txt_nombre.length != 0 && txt_email.length != 0 && txt_motivo.length != 0 && txt_consulta.length != 0)

{

if (txt_email.indexOf("@") != -1 && txt_email.indexOf(".") != -1)

{

form_lv = new LoadVars();

form_lv.nombre = txt_nombre;

form_lv.email = txt_email;

form_lv.motivo = txt_motivo;

form_lv.consulta = txt_consulta;

form_lv.sendAndLoad("send.php", form_lv, "POST");



form_lv.onLoad = function() {trace("LLEGO");

if (this.estatus == "ok")

{

limpiar_contenido();

Alert.yesLabel = "Aceptar";

Alert.buttonWidth = 75;

Alert.show("Tu mensaje a sido enviado", "Other Side", Alert.YES, _root, alClicar, "mensaje", Alert.OK);



} };

}

else {txt_email = "Correo Invalido";

}}

else {

if(txt_email.length == 0 or txt_email == "D") {txt_email = "Dato Necesario"}

if(txt_motivo.length == 0 or txt_motivo == "Dato Necesario") {txt_motivo = "Dato Necesario"}

if(txt_nombre.length == 0 or txt_nombre == "Dato Necesario") {txt_nombre = "Dato Necesario"}

if(txt_consulta.length == 0 or txt_consulta == "Dato Necesario") {txt_consulta = "Dato Necesario"}

}

}




Dentro del archivo.fla tengo el componente “Alert” en la librería.
El Archivo Send.php tiene esta function, el mail que puse es el mio para hacer la comprobación.

<?php

if(isset($_POST["nombre"]) && isset($_POST["email"]) && isset($_POST["motivo"]) && isset($_POST["consulta"]) ){



function ValidarDatos($campo){

//Array con las posibles cabeceras a utilizar por un spammer

$badHeads = array("Content-Type:",

"MIME-Version:",

"Content-Transfer-Encoding:",

"Return-path:",

"Subject:",

"From:",

"Envelope-to:",

"To:",

"bcc:",

"cc:");



//Comprobamos que entre los datos no se encuentre alguna de

//las cadenas del array. Si se encuentra alguna cadena se

//dirige a una página de Forbidden

foreach($badHeads as $valor){

if(strpos(strtolower($campo), strtolower($valor)) !== false){

header("HTTP/1.0 403 Forbidden");

exit;

}

}

}



//Ejemplo de llamadas a la funcion

ValidarDatos($_POST['nombre']);

ValidarDatos($_POST['email']);

ValidarDatos($_POST['motivo']);

ValidarDatos($_POST['consulta']);



$fecha = date("D-M-y H:i");

$mymail = "[email protected]";

$subject = "Email";

$contenido = $_POST["nombre"].":\n";

$contenido .= "Motivo :".$_POST["motivo"]."\n";

$contenido .= "email :".$_POST["email"]."\n\n";

$contenido .= $_POST["consulta"]."\n\n";

$contenido .= "el mensaje se escribio el ".$fecha;

$header = "From:".$_POST["mail"]."\nReply-To:".$_POST["mail"]."\n";

$header .= "X-Mailer:PHP/".phpversion()."\n";

$header .= "Mime-Version: 1.0\n";

$header .= "Content-Type: text/plain";

mail($mymail, $subject, utf8_decode($contenido) ,$header);

echo "&estatus=ok&";

}

?>



Si alguien puede darme una mano en esto se lo agradecere
Gustavo
  #2 (permalink)  
Antiguo 30/07/2008, 11:11
Avatar de fmurga  
Fecha de Ingreso: abril-2008
Mensajes: 53
Antigüedad: 9 años, 8 meses
Puntos: 0
Respuesta: Ayuda con Formulario mail Php en Flash

Cita:
Iniciado por PsychoGus Ver Mensaje
form_lv.sendAndLoad("send.php", form_lv, "POST");
En esta variable prueba poniendo la ruta completa a tu script send.php:

Código:
"http://tudominio.com/send.php"
o hacia la carpeta donde esté ubicado el script.

También asegúrate que estás publicando para Flash Player 9....
  #3 (permalink)  
Antiguo 30/07/2008, 19:36
Avatar de PsychoGus  
Fecha de Ingreso: julio-2008
Mensajes: 5
Antigüedad: 9 años, 5 meses
Puntos: 0
De acuerdo Respuesta: Ayuda con Formulario mail Php en Flash

Hola fmurga.

Anduvo perfecto, muchisimas gracias por la ayuda, como a veces algo tanto se te escapa sin darte cuenta.

De nuevo muchisimas gracias
Gustavo

  #4 (permalink)  
Antiguo 31/07/2008, 12:40
Avatar de fmurga  
Fecha de Ingreso: abril-2008
Mensajes: 53
Antigüedad: 9 años, 8 meses
Puntos: 0
Respuesta: Ayuda con Formulario mail Php en Flash

Me alegra saber que te ha funcionado.

No sé mucho sobre flash pero comparto mis pocos conocimientos con los demás.

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 09:05.