Les dejo los códigos por si ven el problema. Cualquier ayuda se agradecería mucho.
El código del combobox:
Código :
//lleno combos por medio de arrays.. var diego = "[email protected]"; var carlos = "[email protected]"; var bernard = "[email protected]"; asuntodatos = ["diego","carlos","bernard"]; i_destino.dataProvider = asuntodatos; i_destino.rowCount=4;
El codigo para mandar los datos desde el flash:
Código :
function enviar() {
trace(i_nombre.text);
//se crea un nuevo objeto LoadVars y se carga con los datos que vamos a enviar.
datos_email.nombre =i_nombre.text;
datos_email.email =i_email.text;
datos_email.pais =i_pais.text;
datos_email.edad =i_edad.text;
datos_email.mensaje =i_mensaje.text;
datos_email.destino =i_destino.ComboBox;
//
datos_email.estado ="";
//Se programa la función que se ejecutara al recibir la respuesta del servidor
datos_email.onLoad = function() {
/*
al ejecutarse la función dentro del objeto loadVars, debemos usar 'this'
para referirnos a 'datos_email'.
'estado' es una variable que nos devuelve el scrip php, nos referimos a ella
como this.estado.
*/
trace(this);
trace(this.estado);
if (this.estado == "enviado") {
//si el email se ha enviado, vamos al fotograma 3.
gotoAndStop(3);
} else {
//en caso contrario, vamos al fotograma 4
gotoAndStop(4);
}
};
//se envian los datos usando sendAndLoad.
datos_email.sendAndLoad("enviar_email.php", datos_email, "post");
gotoAndStop(2)
}
/*
Activamos la utilización de unicode, esto puede darle problemas si sus scrips
no usan unicode para comunicarse con el servidor.
en este caso elimine o comente la siguiente linea:
*/
System.useCodepage = false;
/*
Si no existe, creamos el objeto loadvars que usaremos para comunicarnos con el servidor
*/
if(datos_email==null){
datos_email = new LoadVars();
datos_email.nombre ="";
datos_email.email ="";
datos_email.pais ="";
datos_email.edad ="";
datos_email.mensaje ="";
datos_email.destino ="";
datos_email.estado ="";
}
//
i_nombre.text=datos_email.nombre;
i_email.text=datos_email.email;
i_pais.htmlText=datos_email.pais;
i_edad.htmlText=datos_email.edad;
i_mensaje.htmlText=datos_email.mensaje;
i_destino.htmlText=datos_email.destino;
/*
programamos el botón para que llame a la función
enviar al hacer clic sobre el
*/
this.b_enviar.onPress = enviar;
stop();
y por último, el código del php
Código :
<?php
$destinatario="{$_POST['destino']}";
$cabeceras="MIME-Version: 1.0\r\n";
$cabeceras .= "Content-type: text/html; charset=utf-8\r\n";
$cabeceras.="From: {$_POST['nombre']}<{$de}>\r\n";
$cabeceras.="Reply-To: {$_POST['email']}\r\n";
//el asunto del mensaje:
$asunto="Contacto Sitio CortFray";
//El cuerpo del mensaje:
$cuerpo=' Ha recibido un email de '.$_POST['nombre'].' cuyo correo es '.$_POST['email'].' del pais '.$_POST['pais'].' de edad: '.$_POST['edad'].' con el siguiente contenido:';
$cuerpo.='<br>'.$_POST['mensaje'].'<br>';
//la persona wue envia el email.
$de=$_POST['email'];
if(mail($destinatario, $asunto, $cuerpo,$cabeceras)){
echo utf8_encode('&estado=enviado');
}else{
echo utf8_encode('&estado=no_enviado');
}
?>
Espero que puedan ayudarme.
Saludos a todos
