Quiero de un flash, de un mismo formulario y con un sólo botón, mandar un mail y cargar datos en una base de datos MySQL.
Tengo en el FLA:
Código :
//MANDA MAIL
//Declaro las variables para enviar y para recibir
var enviomail_lv:LoadVars = new LoadVars();
var recibirmail_lv:LoadVars = new LoadVars();
//Función que envía el formulario
function enviarMail() {
enviomail_lv.nombre = nombre.text;
enviomail_lv.localidad = localidad.text;
enviomail_lv_lv.mail = mail.text;
enviomail_lv.imagen_txt = imagen_txt.text;
enviomail_lv.pais= pais.text;
enviomail_lv.sendAndLoad("mandamail.php", recibirmail_lv, "POST");
//Aquí ustedes pueden cambiar de form.php a form.asp dependiendo del servidor que usen
}
//Función que procesa los datos recibidos del servidor
recibirmail_lv.onLoad = function(exito) {
if (exito) {
estado_txt.text = "Se envio el mail";
//gotoAndPlay("gracias");
} else {
//Muestra un mensaje de error en negrita
estado_txt.text = "No se envia el mail";
}
}
//CARGA DE DATOS
//Declaro las variables para enviar y para recibir
var envio_lv:LoadVars = new LoadVars();
var recibir_lv:LoadVars = new LoadVars();
//Función que envía el formulario
function enviarDatos() {
envio_lv.nombre = nombre.text;
envio_lv.localidad = localidad.text;
envio_lv.mail = mail.text;
envio_lv.imagen_txt = imagen_txt.text;
envio_lv.pais= pais.text;
envio_lv.sendAndLoad("sendmail.php", recibir_lv, "POST");
//envio_lv.sendAndLoad("mandamail.php", recibir_lv, "POST");
//Aquí ustedes pueden cambiar de form.php a form.asp dependiendo del servidor que usen
//gotoAndPlay("gracias");
}
//Función que procesa los datos recibidos del servidor
recibir_lv.onLoad = function(exito) {
if (exito) {
//estado_txt.text = this.estado;
gotoAndPlay("gracias");
} else {
//Muestra un mensaje de error en negrita
estado_txt.text = "No subieron los datos";
}
}
y en los PHPs, mandamail.php:
Código :
<?php
if(isset($_POST["nombre"]) && isset($_POST["localidad"]) && isset($_POST["mail"]) && isset($_POST["pais"]) && isset($_POST["imagen_txt"]) )
{
$fecha = date("D-M-y H:i");
$mymail = "[email protected]";
$subject = "Asunto"."<br>";
$contenido .= "Nombre: ".$_POST["nombre"]."<br>";
$contenido .= "Localidad: ".$_POST["localidad"]."<br>";
$contenido .= "Mail: ".$_POST["mail"]."<br>";
$contenido .= "Pais: ".$_POST["pais"]."<br>";
$contenido .= "Foto: <a href='fotos/".$_POST["imagen_txt"]."'>".$_POST["imagen_txt"]."</a><br>";
$contenido .= "El mensaje se escribio el ".$fecha."<br>";
$header = "From:".$_POST["mail"]."\nReply-To:".$_POST["mail"]."<br>";
$header .= "X-Mailer:PHP/".phpversion()."\n";
$header .= "Mime-Version: 1.0\n";
$header = "Content-Type: text/html; charset=utf-8\r\n";
$a=mail($mymail, $subject, utf8_encode($contenido) ,$header);
if($a){
echo "estatus=ok";
}else{
echo "estatus=mal";
}
}else{
echo "estadus=mal2";
}
?>
y el PHP, sendmail (no se guien por el nombre del archivo, este carga los datos en la base):
Código :
<?php
if(isset($_POST["nombre"]) && isset($_POST["localidad"]) && isset($_POST["mail"]) && isset($_POST["nombCreacion"]) && isset($_POST["imagen_txt"]) )
{
$nombre = $_REQUEST["nombre"];
$localidad = $_REQUEST["localidad"];
$email = $_REQUEST["mail"];
$pais= $_REQUEST["pais"];
$foto = $_REQUEST["imagen_txt"];
$habilitar = 0;
$votos = 0;
$base = basededatos';
$conexion = mysql_connect ( 'localhost' , 'root' , 'root' );
mysql_select_db ( $base , $conexion );
mysql_query ( "INSERT INTO fotografias (nombre,localidad,email,pais,foto,habilitar,votos) VALUES ( '$nombre' , '$localidad' , '$email' , '$pais, '$foto' , '$habilitar' , '$votos' )", $conexion);
echo 'exito=true';
}else{
echo "nada subio";
}
?>
bueno....carga los datos a la base, no manda el mail.
qué hago mal o qué tengo que hacer bien?
Abrazos y gracias
