Foros del Web » Programando para Internet » PHP »

PHP OO Problemas con email PHP-Flash

Estas en el tema de Problemas con email PHP-Flash en el foro de PHP en Foros del Web. Hola a todos!!! Estoy intentando hacer funcionar el típico servicio de mail desde Flash utilizando PHP... pero no hay manera de que funcione. Los archivos ...
  #1 (permalink)  
Antiguo 30/12/2010, 09:45
Avatar de wendo_evm  
Fecha de Ingreso: febrero-2010
Mensajes: 21
Antigüedad: 14 años, 2 meses
Puntos: 0
Problemas con email PHP-Flash

Hola a todos!!!

Estoy intentando hacer funcionar el típico servicio de mail desde Flash utilizando PHP... pero no hay manera de que funcione.

Los archivos están colgados en un host de Nominalia con base Linux.

Tengo un Flash con dos campos de textinput para email y asunto, y luego un textArea para el cuerpo del mail.

El el primer fotograma del Flash coloco:

Código:
var envio_lv:LoadVars = new LoadVars();
var recibir_lv:LoadVars = new LoadVars();
function enviarMail() {
	if(email_txt.length && asunto_txt.length && cuerpo_txt.length){
		if (email_txt.text != "") {
				if (email_txt.text.indexOf("@") != -1 && email_txt.text.indexOf(".") != -1) {
	envio_lv.asunto = asunto_txt.text;
	envio_lv.email = email_txt.text;
	envio_lv.cuerpo = cuerpo_txt.text;
	estado_txt.text = "Enviando su correo ...";
	envio_lv.sendAndLoad("email.php", recibir_lv, "POST");
	} else {
		getURL ("javascript:alert('Correo invalido')");	
		}
		}
	} else {
		getURL ("javascript:alert('Por favor, rellene todos los campos.')");
			}
			}
			
recibir_lv.onLoad = function(exito) {
	if (exito) {
		estado_txt.text = this.estado;
		asunto_txt.text = "";
		email_txt.text = "";
		cuerpo_txt.text = "";
	} else {
		estado_txt.text = "Error en la aplicación de correo";
	}
};
Y en el archivo php he colocado lo siguiente:

Código PHP:
<?php
    
if(isset($_POST["nombre"]) && isset($_POST["titulo"]) && isset($_POST["email"]) && isset($_POST["mensaje"]) )
    {
    
$sendTo "[email protected]";
    
$subject $_POST["asunto"];
    
$headers "From: " "email";
    
$headers .= "<" $_POST["email"] . ">\r\n";
    
$headers .= "Reply-To: " $_POST["email"]; 
    
$headers .= "X-Mailer: PHP/" phpversion() . " \r\n";
    
$headers .= "Mime-Version: 1.0 \r\n";
    
$headers .= "Content-Type: text/plain";
    
$message $_POST["cuerpo"];
    
mail($sendTo$subject$message$headers);
    echo 
"estado=Mensaje enviado :D";
    }
?>
Y siempre pasa lo mismo, en el asunto sale Unknown y no envia nada.

Estos son códigos de copy paste que no tienen se supone mucho secreto... pues bien, yo no encuentro la forma de hacerlo funcionar...

Si alguien me puede ayudar estaré muy agradecido.

Gracias!
  #2 (permalink)  
Antiguo 30/12/2010, 10:13
Avatar de darklegend  
Fecha de Ingreso: diciembre-2010
Mensajes: 21
Antigüedad: 13 años, 4 meses
Puntos: 1
Respuesta: Problemas con email PHP-Flash

ola este el el codigo actionscript que deberias utilizar
enviar = function () {
if (email.text.length && asunto.length&&mensaje.length) {
if (email.text.indexOf("@") != -1 && email_txt.text.indexOf(".") != -1) {
var cbListener:Object = new Object();
// Assign function to Listener Object.
cbListener.change = function(event_obj:Object) {
trace("Value changed to: "+event_obj.target.selectedItem.label);
};
// Add Listener.
combo.addEventListener("change", cbListener);

form_lv = new LoadVars();
form_lv.email = email.text;
form_lv.mensaje = mensaje.text;
form_lv.asunto = asunto.text;

form_lv.sendAndLoad("send.php", form_lv, "POST");
servidor_txt.text = "Enviando Mensaje..";
asunto.text = "";
email.text = "";

form_lv.onLoad = function() {
if (this.estatus == "ok") {
servidor_txt.text = " Tu mensaje fue enviado...";
asunto.text = "";
email.text = "";
mensaje.text= "";
} else {
estado_txt.text = "Problemas con el servidor.";
}
};
} else {
email.text = "Correo Invalido";
}
} else {
email.text = "Dato Necesario";
asunto.text = "Dato Necesario";
mensaje.text = "Dato Necesario";
}
};
borrar = function () {
asunto.text ="";
email.text ="";
estado_txt.text ="";
};
enviar_btn.onRelease = enviar;
borrar_btn.onRelease = borrar;




el php se llama send.php





Código PHP:
Ver original
  1. <?php
  2. $asunto = $_POST['asunto'];
  3. $mail = $_POST['mail'];
  4.  
  5. $mensaje = $_POST['mensaje'];
  6.  
  7.  
  8. $header = 'From: ' . $mail . " \r\n";
  9. $header .= "X-Mailer: PHP/" . phpversion() . " \r\n";
  10. $header .= "Mime-Version: 1.0 \r\n";
  11. $header .= "Content-Type: text/plain";
  12.  
  13. $mensaje  = "El asunto de este mensaje es: " . $asunto . " \r\n";
  14. $mensaje .= "Su e-mail es: " . $mail . " \r\n";
  15. $mensaje .= "Mensaje: " . $_POST['mensaje'] . " \r\n";
  16. $mensaje .= "Enviado el " . date('d/m/Y', time());
  17.  
  18. $asunto = 'Contacto entre php y flash';
  19.  
  20. mail($para, $asunto, utf8_decode($mensaje), $header);
  21.  
  22. echo '&estatus=ok&';
  23.  
  24. ?>
revisalo lo modique parecido al tuyo si tiene al gun error en las variables cambialo pero deberia funcionar un saludo y feliz año nuevo

Etiquetas: email, flash, linux, mail, hosts
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 20:00.