Estás en Inicio / Editorial / Flash
09.03.2004
Este tutorial nos ayudará a realizar un formulario a través de flash que se enviará por correo utilizando el soporte de PHP y la función de mail del servidor.
Para
este formulario, necesitaremos un servidor con soporte PHP y la función
mail activada. ¿Como sabemos si tenenos dicha función?, simple.
Crea un nuevo archivo PHP ("send.php") y pones el siguiente código.
Código:
<?php
mail("tuCorreo@tuServidor.com", "Probando Ando =)", "Hola Hola!!");
?>
Súbelo a tu servidor y pruébalo www.tuServidor.com/send.php,
Si todo esta bien te saldrá una pagina en Blanco en el navegador y
a tu casilla llegara dicho correo.

Bien,
Una vez comprobado esto seguimos.
Creamos
una nueva película, sobre el escenario creamos 4 campos de texto de
entrada InputText y les damos nombre de instancia, y creamos 2 botones "enviar_btn" y "borrar_btn"
Crearemos
2 funciones una para enviar las variables a PHP y otra función para
borrar los datos del formulario.
Código:
enviar = function () {
if (email_txt.text.length && nombre_txt.length && titulo_txt.length && mensaje_txt.length) {
if (email_txt.text.indexOf("@") != -1 && email_txt.text.indexOf(".") != -1) {
form_lv = new LoadVars();
form_lv.nombre = nombre_txt.text;
form_lv.mail = email_txt.text;
form_lv.mensaje = mensaje_txt.text;
form_lv.titulo = titulo_txt.text;
form_lv.sendAndLoad("http://www.tmeister.net/send.php", form_lv, "POST");
mensaje_txt.text = "Enviando Mensaje..";
nombre_txt.text = "";
email_txt.text = "";
titulo_txt.text = "";
form_lv.onLoad = function() {
if (this.estatus == "ok") {
mensaje_txt.text = "Tu mensaje fue enviado...";
nombre_txt.text = "";
email_txt.text = "";
titulo_txt.text = "";
} else {
mensaje_txt.text = "Problemas con el servidornIntentalo de Nuevo";
}
};
} else {
email_txt.text = "Correo Invalido";
}
} else {
email_txt.text = "Dato Necesario";
nombre_txt.text = "Dato Necesario";
titulo_txt.text = "Dato Necesario";
mensaje_txt.text = "Dato Necesario";
}
};
Código:
if (email_txt.text.length && nombre_txt.length && titulo_txt.length && mensaje_txt.length)
Con esto comprobamos que al presionar el boton todos los campos de texto no
estén vacíos, si esta condición no se cumple en los campos
aparecerá el texto "Dato Necesario";
Código:
if (email_txt.text.indexOf("@") != -1 && email_txt.text.indexOf(".") != -1) {
Esta comprobación revisa que el mail introducido tenga la @ y
un punto .;
Si ambas condiciones son ciertas creamos una instancia de la clase LoadVars
y asignamos variables para enviar a PHP
Código:
form_lv_lv = new LoadVars();
form_lv.nombre = nombre_txt.text;
form_lv.mail = email_txt.text;
form_lv.mensaje = mensaje_txt.text;
form_lv.titulo = titulo_txt.text;
form_lv.sendAndLoad("send.php", form_lv, "POST");
mensaje_txt.text = "Enviando Mensaje..";
}
Una vez ejecutado el Script PHP y si todo salio bien, este, regresara una variable
llamada status que tomaremos con el evento onLoad
Código:
form_lv.onLoad = function() {
if (this.estatus == "ok") {
mensaje_txt.text = "Tu mensaje fue enviado. nGracias.... =)";
nombre_txt.text = " ";
email_txt.text = " ";
titulo_txt.text = " ";
} else {
mensaje_txt.text = "Problemas con el servidornIntentalo de Nuevo";
}
};
Con esta función solo borraremos los datos que tengan los campos de texto.
Código:
borrar = function () {
nombre_txt.text = " ";
email_txt.text = " ";
mensaje_txt.text = " ";
titulo_txt.text = " ";
};
Esto no necesita mucha explicación =P
Por ultimo asignamos dichas funciones a los eventos de los botones
Código:
enviar_btn.onRelease = enviar; borrar_btn.onRelease = borrar;
Y esto es todo en Flash.. Seguimos con el PHP..
Código:
<?php
if(isset($_POST["nombre"]) && isset($_POST["titulo"]) isset($_POST["email"])
isset($_POST["mensaje"]) ){
$fecha = date("d-M-y H:i");
$mymail = “tuCorreo@tuServidor.com”;
$subject = “Desde el Sitio.. =)”;
$contenido = $nombre.” Escribio :\n”;
$contenido .= $mensaje.”\n\n”;
$contenido .= “el mensaje se escribio el “.$fecha;
$header = “From:”.$mail.”\nReply-To:”.$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&”;
}
?>
La función isset verifica que una variable exista, en este caso verificamos
que las cuatro variables existan antes de enviar el mail.
Los parámetros de la función mail de PHP son:
Una vez enviado el mail el PHP regresa la variable status que Flash interpretara…
Si dicha variable existe es que todo funcióno… =)
NOTA: Para enviar un correo en formato HTML solo necesitas
escribir el cuerpo del mensaje con dicho formato (HTML) y en los headers especificarlo,
esto se hace cambiando Content-Type: text/plain por Content-Type:
text/html
Para más información sobre la función mail href="http://mx.php.net/manual/es/function.mail.php">Click Aqui
href="/editorial/util/flashphpform.zip">Bajar Zip
Califica esta nota:
Carlos Chávez García
Jefe del área de desarrollo en la empresa Sapotek y consultor independiente enfocado a soluciones RIA Flash, Flex.
Si eres nuevo en Maestros del Web y te agradan nuestras publicaciones, te invitamos a suscribirte a nuestro Feed.
Sindícanos en: Google Reader, Bloglines, My Yahoo o My MSN | ¿Qué es el Feed?
276 comentarios en total.
gracias, anda y bien
un dato util: servidores gratuitos para PHP
http://www.hacker.com.ve/modules.php?name=hosting
de nuevo gracias
felicitaciones
Cuando hago la prueba para ver si mi servidor acepta php me sale correcto. Pero cuando ya hago el codigo grande con con if… etc me da este error en la pagina:
Parse error: parse error in /home/httpd/vhosts/montana-del-mar.com/httpdocs/send.php on line 10
Que me puede pasar?
Gracias
El error Parse error es por que hay errores en la Sintaxis.. por lo general es un punto y coma que no esta….
Checalo bien.. y si sigue mal me avisas..
Saludos!! ![]()
$_POST no funciona en la mitad de los servidores que hay en el mundo.
el fix para esto es:
$_POST = ($_POST ? $_POST : $HTTP_POST_VARS);
saludos
jj
Lo he chequeado bien, y esta igual que el del articulo… Que debe estar mal?
Gracias
Algún tutorial que me ayude a enviar el formulario a una base de datos y luego leer esta información?
Mensaje Original por Albert
Lo he chequeado bien, y esta igual que el del articulo… Que debe estar mal?
Gracias
Hola Albert, deberias de poner el codigo que estas utilizando
Ahora no me da errores la pagina, pero cuando pongo enviar desde el Flash, este no se envia. Les pongo el codigo en php y también en Flash.
PHP:
< ?php
if(isset($_POST["nombre"]) && isset($_POST["reservar"]) && isset($_POST["informacion"]) && isset($_POST["senor"]) && isset($_POST["email"]) && isset($_POST["apellidos"]) && isset($_POST["calle"]) && isset($_POST["ciudad"]) && isset($_POST["codigo"]) && isset($_POST["pais"]) && isset($_POST["movil"]) && isset($_POST["fax"]) && isset($_POST["url"]) && isset($_POST["llegada"]) && isset($_POST["salida"]) && isset($_POST["apartamento"]) && isset($_POST["estandard"]) && isset($_POST["especial"]) && isset($_POST["mensaje"]) ){
$fecha = date(”d-M-y H:i”);
$mymail = “especial@montana-del-mar.com”;
$subject = “Información =)”;
$contenido = $informacion.” informacion :\n”;
$contenido = $reservar.” reservar :\n”;
$contenido = $nombre.” nombre :\n”;
$contenido = $apellidos.” apellidos :\n”;
$contenido = $senor.” senor :\n”;
$contenido = $email.” email :\n”;
$contenido = $calle.” calle :\n”;
$contenido = $codigo.” codigo :\n”;
$contenido = $ciudad.” ciudad :\n”;
$contenido = $pais.” pais :\n”;
$contenido = $movil.” movil :\n”;
$contenido = $fax.” fax :\n”;
$contenido = $url.” url :\n”;
$contenido = $llegada.” llegada :\n”;
$contenido = $salida.” salida :\n”;
$contenido = $apartamento.” apartamento :\n”;
$contenido = $estandard.” estandard :\n”;
$contenido = $especial.” especial :\n”;
$contenido .= $mensaje.” mensaje :\n\n”;
$contenido .= “el mensaje se escribio el “.$fecha;
$header = “From:”.$email.”\nReply-To:”.$email.”\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&”;
}
?>
Flash:
enviar = function () {
if (email_txt.text.length && nombre_txt.length && apellidos_txt.length && ciudad_txt.length && pais_txt.length && movil_txt.length) {
if (email_txt.text.indexOf(”@”) != -1 && email_txt.text.indexOf(”.”) != -1) {
form_lv = new LoadVars();
form_lv.señor = senor_cmb.text;
form_lv.nombre = nombre_txt.text;
form_lv.email = email_txt.text;
form_lv.apellidos = apellidos_txt.text;
form_lv.calle = calle_txt.text;
form_lv.ciudad = ciudad_txt.text;
form_lv.codigo = codigo_txt.text;
form_lv.pais = pais_txt.text;
form_lv.movil = movil_txt.text;
form_lv.fax = fax_txt.text;
form_lv.url = url_txt.text;
form_lv.llegada = llegada_txt.text;
form_lv.salida = salida_txt.text;
form_lv.apartamento = apartamento_cmb.text;
form_lv.estandard = estandard_op.text;
form_lv.especial = especial_op.text;
form_lv.mensaje = mensaje_txt.text;
form_lv.sendAndLoad(”http://www.spain-mm.net/send2.php”, form_lv, “POST”);
enviando_txt.visible =true;
enviar_btn.enabled = false;
enviado_txt.visible = false;
enviado2_txt.visible = false;
nombre_txt.text = “”;
email_txt.text = “”;
apellidos_txt.text = “”;
calle_txt.text = “”;
ciudad_txt.text = “”;
codigo_txt.text = “”;
pais_txt.text = “”;
movil_txt.text = “”;
fax_txt.text = “”;
url_txt.text = “”;
llegada_txt.text = “”;
salida_txt.text = “”;
mensaje_txt.text = “”;
form_lv.onLoad = function() {
if (this.estatus == “ok”) {
enviado_txt.visible=true;
enviando_txt.visible=false;
enviado2_txt.visible=false;
enviar_btn.enabled = true;
nombre_txt.text = “”;
email_txt.text = “”;
apellidos_txt.text = “”;
calle_txt.text = “”;
ciudad_txt.text = “”;
codigo_txt.text = “”;
pais_txt.text = “”;
movil_txt.text = “”;
fax_txt.text = “”;
url_txt.text = “”;
llegada_txt.text = “”;
salida_txt.text = “”;
mensaje_txt.text = “”;
} else {
enviado2_txt.visible = true;
enviando_txt.visible=false;
enviado_txt.visible=false;
enviar_btn.enabled=true;
}
};
} else {
email_txt.text = “Correo NO valido, falta la ‘@’ o el ‘.’ “;
}
} else {
email_txt.text = “Dato Necesario”;
nombre_txt.text = “Dato Necesario”;
apellidos_txt.text = “Dato Necesario”;
ciudad_txt.text = “Dato Necesario”;
pais_txt.text = “Dato Necesario”;
movil_txt.text = “Dato Necesario”;
}
};
borrar = function () {
enviando_txt.visible=false;
enviado_txt.visible=false;
enviado2_txt.visible=false;
nombre_txt.text = ” “;
email_txt.text = ” “;
apellidos_txt.text = ” “;
ciudad_txt.text = ” “;
calle_txt.text = ” “;
codigo_txt.text = ” “;
pais_txt.text = ” “;
movil_txt.text = ” “;
fax_txt.text = ” “;
url_txt.text = ” “;
llegada_txt.text = ” “;
salida_txt.text = ” “;
mensaje_txt.text = ” “;
};
enviar_btn.onRelease = enviar;
borrar_btn.onRelease = borrar;
Gracias
yo te recomiendo esto: http://www.forosdelweb.com/showthread.php?postid=348928#post348928 es un form que realiza las mismas acciones y es facil de entender
pd: deberias registrarte en este foro para que tus mensajes sean respondidos rapidamente y recibas en tu e-mail las respuestas…
adios
Es muy útil, los felicito
Les queria consultar cual es la causa de que cuando quiero probar el send.php en mi servidor, para ver si soporta php, en vez de salirme la pagina en blanco o darme error me lo quiere bajar como archivo??????
que estoy haciendo mal?
yo pongo http://www.midominio.com.ar/send.php
y me sale un cartelito para poder bajar el archivo
Artículo excelente que sin duda me ha ayudado. Muchas gracias por publicarlo.
Mensaje Original por Gustavo
en vez de salirme la pagina en blanco o darme error me lo quiere bajar como archivo??????
Eso es por que en tu servidor no tienes instalado PHP.. Por lo tanto este formulario no te servira.
Saludos!! ![]()
queremos manejar php
Como podría hacerse para adjuntar tb un archivo desde el flash tb? Gracias ![]()
o hacer eso con FLASH es algo imposible? Me vendría realmente bien saber cómo puede hacerse, muchísimas gracias de antemano, he estado mirando por foros en inglés, y en ningún sitio, ninguno he visto algo de este tipo de enviar mails mezclando FLASH y PHP con el que se pueda adjuntar archivos. Espero que vosotros podais ayudarme.
muy bueno, solo que no puedo agregar mas destinatarios de email y los datos de telefono, pais, etc, no llegan, y los he escrito en el scrpt del flash, hice algo mal??
Malibran (un amigo) me hizo notar un par de detalles del formulario, pues no podia dar con el.
el if dentro del php comprueba si existe la variable “email” cuando en realidad la variable se llama “mail”
y el otro detalle es que le faltan los && a los demas isset del if
quedando el if:
if(isset($_POST["nombre"]) && isset($_POST["titulo"]) && isset($_POST["mail"]) && isset($_POST["mensaje"]) ){
saludos!
y muchas gracias
pd el campo titulo no es recibido en el mail…
TENGO una pregunta….disculpen si me meto a mitad del foro…tengo una duda, que la recorro por todos los foros y nada….miren, tengo 2 servidores, uno en windows y el otro en LINUX, el que esta en el servidor LINUX; tiene activado el RegisterGlobal, y el de WIndows no,…..ambos tienen soporte para PHP, …..ahora, tengo un formulario, en el servidor de LINUX, y me funciona correctamente, pero en el de windows,…no!!….ya he probado varios formularios, (diferente programacion), pero ninguno fnciona en el servidor de windows….me podrian decir si cambia la programacion al ser un servidor windows???…….
GRACIAS!!…..y hay alguna solucion????
ayudenme por favor…!!
Hola, lo acabo de probar incluyendo 6 variables más y haciendo los cambios..pero no me funciona el hecho de que salga “Tu mensaje ha sido enviado” en flash
¡¡¡PORQUE TENGO UN PROBLEMA EN LA LINEA 22!!!!
< ?php
if(isset($_POST["nombre"]) && isset($_POST["apellidos"]) && isset($_POST["profesion"]) && isset($_POST["pais"]) && isset($_POST["ciudad"]) && isset($_POST["tema"]) && isset($_POST["email"]) && isset($_POST["coment"]) ){
$fecha = date(”d-M-y H:i”);
$mymail = “juan@juantio.com”;
$subject = “Nuevo Mensaje desde el Web(español)”;
$contenido = $nombre.” Envió los siguientes datos :\n”;
$contenido .= $nombre.”\n\n”;
$contenido .= $apellidos.”\n\n”;
$contenido .= $profesion.”\n\n”;
$contenido .= $pais.”\n\n”;
$contenido .= $ciudad.”\n\n”;
$contenido .= $tema.”\n\n”;
$contenido .= $coment.”\n\n”;
$contenido .= “el mensaje se escribio el “.$fecha;
$header = “From:”.$email.”\nReply-To:”.$email.”\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&”;
}
?> Linea 22<……
Me podriais ayudar diciendome, alguna dirección o dandome algun ejemplo, donde desde un formulario en flash se pueda grabar, listar y borrar en una base de datos utilizando php y msql.
Muchas gracias
BOTÓN ENVIAR:
on (release) {
enviar = function () { if (email_txt.text.length && nombre_txt.length && titulo_txt.length && mensaje_txt.length) {if (email_txt.text.indexOf(”@”) != -1 && email_txt.text.indexOf(”.”) != -1) {form_lv = new LoadVars();form_lv.nombre = nombre_txt.text;form_lv.mail = email_txt.text;form_lv.mensaje = mensaje_txt.text;form_lv.titulo = titulo_txt.text;form_lv.sendAndLoad(”http://www.centroaguaviva.com/send.php”, form_lv, “POST”);mensaje_txt.text = “Enviando Mensaje..”;nombre_txt.text = “”;email_txt.text = “”;titulo_txt.text = “”;form_lv.onLoad = function() {if (this.estatus == “ok”) {mensaje_txt.text = “Su mensaje fue enviado…”;nombre_txt.text = “”;email_txt.text = “”;titulo_txt.text = “”;} else {mensaje_txt.text = “Problemas con el servidor\nIntentelo de Nuevo”;}};} else {email_txt.text = “Correo Invalido”;}} else {email_txt.text = “Dato Necesario”;nombre_txt.text = “Dato Necesario”;titulo_txt.text = “Dato Necesario”;mensaje_txt.text = “Dato Necesario”;}};
}
on (release) {
enviar_btn.onRelease = enviar;
}
BOTÓN BORRAR
on (release) {
borrar = function () { nombre_txt.text = ” “;email_txt.text = ” “;mensaje_txt.text = ” “;titulo_txt.text = ” “;};
}
on (release) {
borrar_btn.onRelease = borrar;
}
No me funciona, pero no sé como hacerlo para que vaya. El servidor he probado y sí que acepta la función, el fallo lo tengo en ese código. Creo que sobre todo en la parte de poner enviar y borrar al final de cada uno de los dos códigos que he pegado.
Cómo se pone correctamente?
Mil gracias por anticipado
hola, enhorabuena, ahora si ke me he aclarado pero recibo el correo vacío pese a rellenar todos los campos… sabes qué hago mal?
Muchas gracias!
todo va bien, pero en el campo from no me aparece en mi casilla de correo el email del remitente, tengo dudas si en el fla te has equivocado al darle como instancia a el campo email “email_txt” y no “mail_txt”.
pasaba por google algo desesperado buscando como hacer quemi formulario funcione y encontre este foro que esta super ahora siempre lo consultare para aprender mas, y sobre todo php que no se mi mela gracias muchas gracias ![]()
Como puedo hacer para que me marque espacios cuando me regresa el php a mi mail es decir
asi
ynoquemepongatodocorrido
ME DA ESTE FALLO QUÉ DEBO HACER?
Total de errores de ActionScript: 2 Errores comunicados: 2
**Error** Escena=Escena 1, capa=Capa 1, fotograma=1:Línea 14: La declaración debe aparecer dentro del controlador on/onClipEvent
borrar = function () {
**Error** Escena=Escena 1, capa=Capa 1, fotograma=1:Línea 14: La declaración debe aparecer dentro del controlador on/onClipEvent
enviar = function () {
Disculpen la ignorancia, me estoy iniciando en esto de la programación, quiza les paresca tonto pero no se donde meter el codigo en fla
Que modificaciones se tiene que hacer si en el formulario se inserta RadioButton??. Espero que alguien me pueda ayudar.
Que tal ojala alguien me pueda ayudar, tengo el tutorial de maestros del web, donde me dan todo el codigo, pero mi duda es si se pone todo junto o separado por algun signo de } o tabulacion, yo pongo en el primer fotograma lo sig:
enviar = function () {
if (email_txt.text.length && nombre_txt.length && titulo_txt.length && mensaje_txt.length) {
if (email_txt.text.indexOf(”@”) != -1 && email_txt.text.indexOf(”.”) != -1) {
form_lv = new LoadVars();
form_lv.nombre = nombre_txt.text;
form_lv.mail = email_txt.text;
form_lv.mensaje = mensaje_txt.text;
form_lv.titulo = titulo_txt.text;
form_lv.sendAndLoad(”http://www.tmeister.net/send.php”, form_lv, “POST”);
mensaje_txt.text = “Enviando Mensaje..”;
nombre_txt.text = “”;
email_txt.text = “”;
titulo_txt.text = “”;
form_lv.onLoad = function() {
if (this.estatus == “ok”) {
mensaje_txt.text = “Tu mensaje fue enviado…”;
nombre_txt.text = “”;
email_txt.text = “”;
titulo_txt.text = “”;
} else {
mensaje_txt.text = “Problemas con el servidor\nIntentalo de Nuevo”;
}
};
} else {
email_txt.text = “Correo Invalido”;
}
} else {
email_txt.text = “Dato Necesario”;
nombre_txt.text = “Dato Necesario”;
titulo_txt.text = “Dato Necesario”;
mensaje_txt.text = “Dato Necesario”;
}
};
Luego como anexo el codigo para validar la arroba y que no esten vacios, o donde van:
if (email_txt.text.length && nombre_txt.length && titulo_txt.length && mensaje_txt.length)
if (email_txt.text.indexOf(”@”) != -1 && email_txt.text.indexOf(”.”) != -1) {
Luego la funcion borrar donde se pone en el codigo o en el boton:
borrar = function () {
nombre_txt.text = ” “;
email_txt.text = ” “;
mensaje_txt.text = ” “;
titulo_txt.text = ” “;
};
Y por ultimo estos es en los botones o en el mismo codigo:
enviar_btn.onRelease = enviar;
borrar_btn.onRelease = borrar;
Y el php es este:
< ?php
if(isset($_POST["nombre"]) && isset($_POST["titulo"]) isset($_POST["email"])
isset($_POST["mensaje"]) ){
$fecha = date(”d-M-y H:i”);
$mymail = “tuCorreo@tuServidor.com”;
$subject = “Desde el Sitio.. =)”;
$contenido = $nombre.” Escribio :\n”;
$contenido .= $mensaje.”\n\n”;
$contenido .= “el mensaje se escribio el “.$fecha;
$header = “From:”.$mail.”\nReply-To:”.$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&”;
}
?>
Ojala me ayuden despues de reirse. Gracias
tuk, $_POST no funciona en la mitad de los servidores que hay en el mundo.
el fix para esto es:
$_POST = ($_POST ? $_POST : $HTTP_POST_VARS);
saludos
Este es el fix para el $_POST, pero…. dónde iría ubicado???
jorgelover, Que modificaciones se tiene que hacer si en el formulario se inserta RadioButton??. Espero que alguien me pueda ayudar.
estoy haciendo formulario con flash y php pero me tildé cuando pongo los check box, sabes como funciona? o sea donde le doy la orden ?
gracias
tatiamaya@hotmail.com
Hola este script me funciona sólo cuando relleno el formularion en local, pero si la página está en el servidor o en localhost no funciona. Cual es el problema?
Este es el script:
PHP:
———————————————————————-
< ?
$_POST = ($_POST ? $_POST : $HTTP_POST_VARS);
setlocale(LC_CTYPE,”spanish” );
$style = $_POST['style'];
//numero de campos recibidos
$fields = $_POST['nfields'];
$destino = $_POST['destino'];
//la persona que envia el email.
$de = $_POST['a1_Email'];
//estos datos se usaran como cabecera del email.
$header = “MIME-Version: 1.0\r\n”;
$header .= “Content-type: text/html\r\n”;
$header .= “From: {$_POST['sender']}< {$de}>\r\n”;
$header .= “Reply-To: {$_POST['a1_Email']}\r\n”;
//el asunto del mensaje:
$asunto = $_POST['subject'];
//El titulo del mensaje:
$titulo = $_POST['titulo'];
//ordenación de las variables recibidas
ksort($_POST);
//array sólo con los datos que apareceran en el cuerpo
$datos = array_slice($_POST,0,$fields);
#########################################################################################
#
# Código html del cuerpo del mensaje
#
#########################################################################################
$cuerpo = “
|
” . $titulo . “ |
|
| ” . substr($nombre_campo ,3 ). “: | ” . $valor . “ |
“;
###########################################################################################
//envío del mail
mail($destino,$subject,$cuerpo,$header) or die (”&mensaje=fail”);
echo “&mensaje=ok”;
//error_log(3,$php_errormsg,”error.dat”);
?>
FLASH:
————————————————————————–
enviar = function () {
if (email_txt.text.length && nombre_txt.length && telf_txt.length && mensaje_txt.length) {
if (email_txt.text.indexOf(”@”) != -1 && email_txt.text.indexOf(”.”) != -1) {
form_lv = new LoadVars();
////////////////////////////////////////////////////////////////////
form_lv.style = “http://www.servidor.com/styles/mail.css”;
form_lv.nfields = 4;
form_lv.destino = “cisco@primari.net”;
form_lv.sender = “prueba@mail.com”;
form_lv.subject = “Correo de prueba”;
form_lv.titulo = “Este mensaje ha sido enviado desde Flash”;
////////////////////////////////////////////////////////////////////
form_lv.a2_Nombre = nombre_txt.text;
form_lv.a1_Email = email_txt.text;
form_lv.a4_Comentarios = mensaje_txt.text;
form_lv.a3_Telefono = telf_txt.text;
form_lv.sendAndLoad(”http://www.servidor.com/mail/sendmail.php”,
form_lv, “POST”);
mensaje_txt.text = “Enviando Mensaje..”;
nombre_txt.text = “”;
email_txt.text = “”;
titulo_txt.text = “”;
form_lv.onLoad = function() {
if (this.mensaje == “ok”) {
mensaje_txt.text = “Tu mensaje fue enviado…”;
nombre_txt.text = “”;
email_txt.text = “”;
telf_txt.text = “”;
} else {
mensaje_txt.text = “Problemas con el servidor\nIntentalo de Nuevo”;
}
};
} else {
email_txt.text = “Correo Invalido”;
}
} else {
email_txt.text = “Dato Necesario”;
nombre_txt.text = “Dato Necesario”;
telf_txt.text = “Dato Necesario”;
mensaje_txt.text = “Dato Necesario”;
}
};
enviar_btn.onRelease = enviar;
————————————————————————–
Hay pequeñas variaciones, pero si funciona en local…………
hey como puedo hacer para cambiar el color de el texto “datos necesarios” o “correo invalido”
y como hago para verificar el correo
hola ,,,,,soy un muy grade inesperto para realizar el formulario de flash ,,,,,,,,,,,,,,,,y quisiera que me ayudes,,,
donde puedo bajar un editor de php?
mil gracias
Unregistered, Algún tutorial que me ayude a enviar el formulario a una base de datos y luego leer esta información?
estamos igual
muy bueno,pero a mi el campo titulo no llega al mail, para que esta entonces por que el asunto del mail esta en el send.php y ese titulo no me aparece ni siquiera en el cuerpo del mensaje…?
por que?
descargue el archivo .fla copie y pegue el action script en un frame de flash y solo susituí la parte de send and load
sendAndLoad(”http://www.midominio.com/send.php”, por otra parte tambien descargue el .php y sustitui la linea de $mymail = “contact@midominio.com”; y ya cargado en internet sigue sin funcionar ¿Si esta bien lo que hice o esta bien el codigo de descarga o que mas tengo que sustituir o tengo que decile algo a los que me estan haciendo el hosting?
descargue el archivo .fla copie y pegue el action script en un frame de flash y solo susituí la parte de send and load por:
sendAndLoad(”http://www.midominio.com/send.php”,
por otra parte tambien descargue el .php y sustitui la linea de:
$mymail = “micorreo@midominio.com”;
y ya cargado en internet sigue sin funcionar ¿Si esta bien lo que hice o esta bien el codigo de descarga o que mas tengo que sustituir en que en el php o en el swf del .fla o tengo que decile algo a los que me estan haciendo el hosting?
esto es lo que pegue en el frame y abajo esta lo que pegue en el php en el cual no se si tengo que sustituir (desde el sitio…) en subject ayuda please
enviar = function () { if (email_txt.text.length && nombre_txt.length && titulo_txt.length && mensaje_txt.length) {if (email_txt.text.indexOf(”@”) != -1 && email_txt.text.indexOf(”.”) != -1) {form_lv = new LoadVars();form_lv.nombre = nombre_txt.text;form_lv.mail = email_txt.text;form_lv.mensaje = mensaje_txt.text;form_lv.titulo = titulo_txt.text;form_lv.sendAndLoad(”http://www.midominio.com/send.php”, form_lv, “POST”);mensaje_txt.text = “Enviando Mensaje..”;nombre_txt.text = “”;email_txt.text = “”;titulo_txt.text = “”;form_lv.onLoad = function() {trace(”LLEGO”);if (this.estatus == “ok”) {mensaje_txt.text = “Your message has been sent…”;nombre_txt.text = “”;email_txt.text = “”;titulo_txt.text = “”;} else {mensaje_txt.text = “Problemas con el servidor\nIntentalo de Nuevo”;}};} else {email_txt.text = “Correo Invalido”;}} else {email_txt.text = “Dato Necesario”;nombre_txt.text = “Dato Necesario”;titulo_txt.text = “Dato Necesario”;mensaje_txt.text = “Dato Necesario”;}};
borrar = function () { nombre_txt.text = “”;email_txt.text = “”;mensaje_txt.text = “”;titulo_txt.text = “”;};
enviar_btn.onRelease = enviar;
borrar_btn.onRelease = borrar;
PHP
< ?php
if(isset($_POST["nombre"]) && isset($_POST["titulo"]) && isset($_POST["mail"]) && isset($_POST["mensaje"]) ){
$fecha = date(”D-M-y H:i”);
$mymail = “micorreo@midominio.com”;
$subject = “Desde el Sitio.. =)”;
$contenido = $_POST["nombre"].” Escribio :\n”;
$contenido .= $_POST["mensaje"].”\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&”;
}
?>
Yo tambien hice lo mismo que ustedes, pero a mi si me funcionó, que raro…
Una observcion, leyendo los mensajes del foro me doy cuenta que hay mucha gente entrada en este asunto de la programacion que solo pide ayuda u otros que se limitan a agradecer por este recurso, ingnorando completamente a los que son bastante mas inexpertos…
Estoy muy agradecido al editor de este tutorial, llevo casi un año deseando tener mi propio formulario y por fin lo tengo.
Algunas observaciones para los mas novatos:
El codigo que se introduce en el fla, debe estar en algun frame de la linea de tiempo donde esta contenido el formulario de contacto(de preferenia el primero), no se introduce en los botonces de enviar y borra como hio alguno por ahi.
No olvidarse de asignale las etiquetas correspondientes a los campos de texto de entrada y a los botones
El manual tiene un error a llamar al campo de correo “mail_txt” cuando deberia ser “email_txt”
Otra cosa de la cual no estoy muy seguro: si se dan cuenta al hacer el formulario el unico dato que necesitas para enviar tus mails es la direccion del mail SMTP que esta enviando el correo, por lo que me pregunte si cualquiera puede usar tu cuenta smtp para enviar correos ajenos, por esto recurri a un amigo que sabe mas deltema y me dijo que no se puede hacer eso, ya que la mayoria de servidores verifican que el mail sea enviado desde tu propio alojamiento, es una observacion que hago ya que alguien por ahi que pego su codigo indicando sus direcciones. estaba colocando el archivo send.php en una direccion http://www.pollito.com/send.php y el correo que empleaba era contacto@gallina.com y segun entendi, el servidor verifica que la cuenta de correo contacto@gallina.com solo sea empleada (en el aso del fomulario) en la direcciones http://www.gallina.com/send.php o talvez viceversa.
La mejor y mas facil manera de hacer el formulario es descargar los archivos y modificar las direciones que mencionaron 2 chicos alla arriba.
Voy a pegar el codigo que utilice a ver si de casualidad movi algo necesario sin darme cuenta:
EN EL CASO DEL PHP:
< ?php
if(isset($_POST["nombre"]) && isset($_POST["titulo"]) && isset($_POST["mail"]) && isset($_POST["mensaje"]) ){
$fecha = date(”D-M-y H:i”);
$mymail = “contacto@aquipusemidominio.com”;
$subject = “Desde el Sitio.. =)”;
$contenido = $_POST["nombre"].” Escribio :\n”;
$contenido .= $_POST["mensaje"].”\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&”;
}
?>
EN EL CASO DEL FLA:
enviar = function () {
if (email_txt.text.length && nombre_txt.length && titulo_txt.length && mensaje_txt.length) {
if (email_txt.text.indexOf(”@”) != -1 && email_txt.text.indexOf(”.”) != -1) {
form_lv = new LoadVars();
form_lv.nombre = nombre_txt.text;
form_lv.mail = email_txt.text;
form_lv.mensaje = mensaje_txt.text;
form_lv.titulo = titulo_txt.text;
form_lv.sendAndLoad(”http://www.aquipusemidominio.com/send.php”, form_lv, “POST”);
mensaje_txt.text = “Enviando Mensaje..”;
nombre_txt.text = “”;
email_txt.text = “”;
titulo_txt.text = “”;
form_lv.onLoad = function() {
trace(”LLEGO”);
if (this.estatus == “ok”) {
mensaje_txt.text = “Tu mensaje fue enviado…”;
nombre_txt.text = “”;
email_txt.text = “”;
titulo_txt.text = “”;
} else {
mensaje_txt.text = “Problemas con el servidor\nIntentalo de Nuevo”;
}
};
} else {
email_txt.text = “Correo Invalido”;
}
} else {
email_txt.text = “Dato Necesario”;
nombre_txt.text = “Dato Necesario”;
titulo_txt.text = “Dato Necesario”;
mensaje_txt.text = “Dato Necesario”;
}
};
borrar = function () {
nombre_txt.text = “”;
email_txt.text = “”;
mensaje_txt.text = “”;
titulo_txt.text = “”;
};
enviar_btn.onRelease = enviar;
borrar_btn.onRelease = borrar;
Un Gran Gracias!
Necesito los campos de texto, en ingles
es decir, name, address etc
si lo cambio recibiran igual el correo?
como deberia hacerlo?
gracias por responder
Nausicaa
Ah! me olvidaba lo mas importante !! necesito que los nombres de instancia sean en ingles tambien. Varia el envio?
saludos y gracias
Hola,
Necesito una ayuda, como puedo hacer para que pueda autoindetificar con el servidor smtp, ya que el hosting donde quiero hacer las pruebas necesariamente necesita que el código de send.php tenga la auntentificacion para que pueda llegar el correo al destinatario.
Alguien que me pueda ayudar en el tema se lo agradeceré
Muchas gracias,
Armando
guiye, gracias, anda y bien
HOLA Q TAL PUES NO SE COMO PROGRAMAR ESE FORMULARIO EN FLASH ME PODEIS AYUDAR
hola q tal pues m duda es como programar el flash me podeis ayudar mi email es yesmerlealh@hotmail.com te lo agradeceria
pressions, Yo tambien hice lo mismo que ustedes, pero a mi si me funcionó, que raro…
Una observcion, leyendo los mensajes del foro me doy cuenta que hay mucha gente entrada en este asunto de la programacion que solo pide ayuda u otros que se limitan a agradecer por este recurso, ingnorando completamente a los que son bastante mas inexpertos…
Estoy muy agradecido al editor de este tutorial, llevo casi un año deseando tener mi propio formulario y por fin lo tengo.
Algunas observaciones para los mas novatos:
El codigo que se introduce en el fla, debe estar en algun frame de la linea de tiempo donde esta contenido el formulario de contacto(de preferenia el primero), no se introduce en los botonces de enviar y borra como hio alguno por ahi.
No olvidarse de asignale las etiquetas correspondientes a los campos de texto de entrada y a los botones
El manual tiene un error a llamar al campo de correo “mail_txt” cuando deberia ser “email_txt”
Otra cosa de la cual no estoy muy seguro: si se dan cuenta al hacer el formulario el unico dato que necesitas para enviar tus mails es la direccion del mail SMTP que esta enviando el correo, por lo que me pregunte si cualquiera puede usar tu cuenta smtp para enviar correos ajenos, por esto recurri a un amigo que sabe mas deltema y me dijo que no se puede hacer eso, ya que la mayoria de servidores verifican que el mail sea enviado desde tu propio alojamiento, es una observacion que hago ya que alguien por ahi que pego su codigo indicando sus direcciones. estaba colocando el archivo send.php en una direccion http://www.pollito.com/send.php y el correo que empleaba era contacto@gallina.com y segun entendi, el servidor verifica que la cuenta de correo contacto@gallina.com solo sea empleada (en el aso del fomulario) en la direcciones http://www.gallina.com/send.php o talvez viceversa.
La mejor y mas facil manera de hacer el formulario es descargar los archivos y modificar las direciones que mencionaron 2 chicos alla arriba.
Voy a pegar el codigo que utilice a ver si de casualidad movi algo necesario sin darme cuenta:
EN EL CASO DEL PHP:
< ?php
if(isset($_POST["nombre"]) && isset($_POST["titulo"]) && isset($_POST["mail"]) && isset($_POST["mensaje"]) ){
$fecha = date(”D-M-y H:i”);
$mymail = “contacto@aquipusemidominio.com”;
$subject = “Desde el Sitio.. =)”;
$contenido = $_POST["nombre"].” Escribio :\n”;
$contenido .= $_POST["mensaje"].”\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&”;
}
?>EN EL CASO DEL FLA:
enviar = function () {
if (email_txt.text.length && nombre_txt.length && titulo_txt.length && mensaje_txt.length) {
if (email_txt.text.indexOf(”@”) != -1 && email_txt.text.indexOf(”.”) != -1) {
form_lv = new LoadVars();
form_lv.nombre = nombre_txt.text;
form_lv.mail = email_txt.text;
form_lv.mensaje = mensaje_txt.text;
form_lv.titulo = titulo_txt.text;
form_lv.sendAndLoad(”http://www.aquipusemidominio.com/send.php”, form_lv, “POST”);
mensaje_txt.text = “Enviando Mensaje..”;
nombre_txt.text = “”;
email_txt.text = “”;
titulo_txt.text = “”;
form_lv.onLoad = function() {
trace(”LLEGO”);
if (this.estatus == “ok”) {
mensaje_txt.text = “Tu mensaje fue enviado…”;
nombre_txt.text = “”;
email_txt.text = “”;
titulo_txt.text = “”;
} else {
mensaje_txt.text = “Problemas con el servidor\nIntentalo de Nuevo”;
}
};
} else {
email_txt.text = “Correo Invalido”;
}
} else {
email_txt.text = “Dato Necesario”;
nombre_txt.text = “Dato Necesario”;
titulo_txt.text = “Dato Necesario”;
mensaje_txt.text = “Dato Necesario”;
}
};
borrar = function () {
nombre_txt.text = “”;
email_txt.text = “”;
mensaje_txt.text = “”;
titulo_txt.text = “”;
};
enviar_btn.onRelease = enviar;
borrar_btn.onRelease = borrar;
En http://www.cristalab.com hay un ejemplo de como enviar comentarios en flash y con datos adjuntos. Haci que mentanse en http://www.cristalab.com y en buscar escriban lo que buscan. Tambien existe un tutorial de actionscript
Hola amigos, he visto q solo algunos preguntaron “Como adjuntar archivos a un form flash php?” pero no encontre respuestas para ello, me uno a esa lista y lo consulto, xfavor amigos expertos en el tema, les pido una ayuda con eso. Gracias de antemano.
Saludos,
$contenido = $_POST["nombre"].” Escribio :\n”;
$contenido = $_POST["titulo"].” Escribio :\n”;
$contenido .= $_POST["mensaje"].”\n\n”;
Probe este formulario y a mi no me funciona. A pesar de que hice la prueba inicial para ver si enviaba el mail.
De acuerdo a lo que he leido anteriormente, tengo una teoria de por que no funciona.
Por favor corrijanme si me equivoco.
Este formulario tiene 2 datos importantes los cuales debes reemplazar.
En el flash, la ruta de tu server hasta el archivo “send.php”.
En el ejemplo “”http://www.tmeister.net/send.php”…..
Y el mail donde supuestamente han de llegar estos datos como correo (dentro del archivo send.php).
En el ejemplo “”tuCorreo@tuServidor.com”…
Al parecer si no hay una correspondencia entre el servidor y la cuenta de correo. Este formulario no envia.
Yo creo deberia ser como sigue:
http://www.tmeister.net/send.php , para el flash
tuCorreo@tmeister.net“, para send.php
Que pasa cuando esta correspondencia no existe. He de modificar el php?, el flash? o no se puede hacer nada?
Yo tengo este problema y creo es por eso que no me funciona. Alguien me puede ayudar?
bueno les comento
no se cuale es el porblema….
hago como dice el manual y no me funciona…envio la prueba y llega casi inmediatamente pero cuando lo monto en totalidad no me funciona.. que podra ser ……
grascias por su ayuda ………………
aunque les comento acabo de usar el codigo que ponene de ejmplo en Deposito de flas ! el cual ustedes recomiendan alla arriba y me funciona….perfectanemte
Hola,
En mi formulario existen 10 campos para rellenar. El script del Flash me parece que no tiene ningún error. El PHP tb me parece estar correcto. Cuando recibo el e-mail (despues de rellenar todo el form.) solo me aparece la información que he introducido en los 2 ultimos campos. Creo que el problema estará en el PHP, posiblemente en las líneas “$header…..” pero, como no entiendo mucho de este tema, les pido vuestra ayuda.
Os dejo el script del php.
PD- las variables que existen en este script, existen tb en el AS, cla.
Gracias.
_______________
< ?php
if(isset($_POST["nombre"]) && isset($_POST["direccion"]) && isset($_POST["poblacion"]) && isset($_POST["provincia"]) && isset($_POST["pais"]) && isset($_POST["codigopostal"]) && isset($_POST["telefono"]) && isset($_POST["email"]) && isset($_POST["modeloprenda"]) && isset($_POST["mensaje"]) ){
$fecha = date(”D-M-y H:i”);
$mymail = “mi.email@midominio.com”;
$subject = “SUBJECT”;
$contenido = $_POST["nombre"].” \n”;
$contenido = $_POST["direccion"].” \n”;
$contenido = $_POST["poblacion"].” \n”;
$contenido = $_POST["provincia"].” \n”;
$contenido = $_POST["pais"].” \n”;
$contenido = $_POST["codigopostal"].” \n”;
$contenido = $_POST["telefono"].” \n”;
$contenido = $_POST["email"].” \n”;
$contenido = $_POST["modeloprenda"].” \n”;
$contenido .= $_POST["mensaje"].”\n\n”;
$contenido .= “fecha del mensaje: “.$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&”;
}
?>
_______________
laurapgarcia, Hola,
En mi formulario existen 10 campos para rellenar. El script del Flash me parece que no tiene ningún error. El PHP tb me parece estar correcto. Cuando recibo el e-mail (despues de rellenar todo el form.) solo me aparece la información que he introducido en los 2 ultimos campos. Creo que el problema estará en el PHP, posiblemente en las líneas “$header…..” pero, como no entiendo mucho de este tema, les pido vuestra ayuda.
Os dejo el script del php.
PD- las variables que existen en este script, existen tb en el AS, cla.
Gracias.
_______________< ?php
if(isset($_POST["nombre"]) && isset($_POST["direccion"]) && isset($_POST["poblacion"]) && isset($_POST["provincia"]) && isset($_POST["pais"]) && isset($_POST["codigopostal"]) && isset($_POST["telefono"]) && isset($_POST["email"]) && isset($_POST["modeloprenda"]) && isset($_POST["mensaje"]) ){
$fecha = date(”D-M-y H:i”);
$mymail = “mi.email@midominio.com”;
$subject = “SUBJECT”;
$contenido = $_POST["nombre"].” \n”;
$contenido = $_POST["direccion"].” \n”;
$contenido = $_POST["poblacion"].” \n”;
$contenido = $_POST["provincia"].” \n”;
$contenido = $_POST["pais"].” \n”;
$contenido = $_POST["codigopostal"].” \n”;
$contenido = $_POST["telefono"].” \n”;
$contenido = $_POST["email"].” \n”;
$contenido = $_POST["modeloprenda"].” \n”;
$contenido .= $_POST["mensaje"].”\n\n”;
$contenido .= “fecha del mensaje: “.$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&”;
}
?>_______________
Hola laurapgarcia, escribes mal el código PHP.
la variable $contenido = “(lo que sea)”;
toma el valor (lo que sea), mientras que si le pones el punto (.) delante del igual lo que haces es concatenar el texto acontinuación.
Te falta el . delante del igual en todas las líneas menos el la primera de la variable.
Quedará así:
$contenido = $_POST["nombre"].” \n”;
$contenido .= $_POST["direccion"].” \n”;
$contenido .= $_POST["poblacion"].” \n”;
$contenido .= $_POST["provincia"].” \n”;
$contenido .= $_POST["codigopostal"].” \n”;
$contenido .= $_POST["telefono"].” \n”;
$contenido .= $_POST["email"].” \n”;
$contenido .= $_POST["modeloprenda"].” \n”;
$contenido .= $_POST["mensaje"].”\n\n”;
Un saludo Antonio Bueno
portaleso.com
hola, mi problema es el siguiente: el formulario me funciona bien, haciendo tal cual dice el tutorial, pero los mails me llegan sin respetar el formato que utilizo el usuario, es decir que cuando hay partes en donde el usuario NO hizo un salto de lineas (enter) y ami me llega en mi mail como si lo ubiese hecho:
ejemplo de datos que escribio el usuario:
“este es el campo de contenido del cuerpo del mensaje que escribio el usuario bla bla bla bla bla bla bla bla bla fin de los datos.”
ejemplo de como ami me llega a mi mail:
“este es el campo de contenido del cuerpo
del mensaje que
escribio el usuario bla bla bla bla bla bla bla bla bla fin de los
datos.”
si algien sabe como corregirlo le agradecere.
El formulario anda barbaro, chequear que algunas veces los servidores no dejan cargar la ruta absoluta sino una relativa (no http://www.tuservidor.com/send.php, sino directamente /send.php
Si alguien puede aclarar lo de los ckeckbox seria genial..
Estoy utilizando la funcion mail(); pero no me llega nunca a los correos con dominio de hotmail, aotros correo de otros dominios si llega.
Mi correo es harsdys99@hotmail.com
Alguna ayuda????????
dese ser por que es un script anti microchot
hola buenas noches ……hice el formulario como dice el tutorial al probarlo todo funciona bien de echo dice q ha sido enviado pero no me llega a ninguno de los mails q e probado…… ni yahoo ni hotmail. ni gmail……
q podra estar pasando????
gracias
Es posible incrustar windows media en flash? lo que me interesa es hacer streaming con flash…
agradezco cualquier respuesta!
shakalmail @ yahoo.com
Hola: hago la prueba de php que indica el tutoríal, pero no me aparece una pagina en blanco, sino, una llena de símbolos y el correo no me llega. ¿cual será mi error?
Hola, en esta web (http://perso.wanadoo.es/dicemcominica) hay un formulario exacto al q proporcionais en esta página, y siguiendo todos los pasos, aparece todo bien, pero no me llegan los formularios al mail q he puesto en el .php, es de hotmail, puede ser por eso??
exelente, solo hay que marcar que en el .fla hay que reemplsar “http://www.tmeister.net/send.php” por la ruta de send.php en tu site
prueba
prueba
muchas gracias un tutorial interesantisimo
Cuando hago la prueba de php en el servidor me sale la siguiente leyende. Alguien tiene idea de que podra ser?
Warning: mail() [function.mail]: “sendmail_from” not set in php.ini or custom “From:” header missing in I:\FerozoWebHosting\lorena-ruella.com.ar\public_html\send.php on line 5
Bueno el ejemplo esta muy bien, pero habra alguna forma de enviar un archivo adjunto¿?
Saludos,
Mercedes
y como se maqueta el contenido del e-mail?, no se puede poner algun tipo de tabla o algo asi?
A: Carlos Chavéz, buenisimo tutorial, me pase horas buscando como hacer el formulario en flash y encontre unos, pero por mi poca experiencia no entendía, hasta que encontre este. Se los recomiendo a todos. Gracias.
todo bien , al hacer la prueba si aparece en blanco la pag en mi server pero no llega ningun mail a mi correo. Saludos. aLGUIEN PUEDE AYUDAR?
buenas, me da el siguiente error cuando le doy a enviar “Problemas con el servidor Intentalo de nuevo”. ¿Alguien me puede ayudar?
no esta mal pero quero algo mas grnde ojala puedan poner un formulario mas grande
buenas, me anduvo bien por suerte, pero cambie de servidores y ahora no me anda, los servidores tienen PHP4, tiene algo ke ver (antes tenia version5) gracias.
pipirulo@hotmail.com
hola como estan critikemme ay y mandenme su s comentarios a pwr_reques@hotmail.com su comentario me ayudara a superarme porfavor mandenlo
Miles de gracias.. aunq tngo un problema con mi sitio pero es externo a esto… gracias x el script!
intenté hacerlo pero no me aparece la pág en blanco en el navegador ni me llega el mail. Qué puede ser?
Excelente ayuda che, muchas gracias!
me anduvo la 1 vez que lo probé y nunca más. Ahora me tira siempre problemas con el servidor. Como si se hubiera tildado. alguien sabe como hacer? gracias mi dir es littlemanfredtate@msn.com
Hola como andan? Necesito ayuda:neurotico :neurotico . Les cuento tgo mi formulario fla. Me falta el archivo “contacto_proceso.php” para que me funcione………..Alguien me pde ayudar o decierme un ejemplo que me funcione con mi formulario fla……..???? Les adjunto el codigo de Enviar del fla.
Graciasssss
on (release) {
msgError=”"
swError=0;
count = 0;
Err = 0;
/*
empresa=_parent.empresa
mail=_parent.mail
nombre=_parent.nombre
tema=_parent.tema
comentario=_parent.comentario
*/
// #1 Check for invalid characters
// Create an arroay of invalid characters
invChars = new Array(” “, “#”, “$”, “%”, “!”, “^”, “~”, “‘”, “*”, “(”, “)”, “,”, “< ", ">“, “/”, “\\”);
// Loop through Array and see if there are any matches, if yes then throw and error.
for (i=0; i
Err = 1;
}
}
// #2 If passed previous error step >>> Check the @ symbol (1 instance of the symbol)
if (Err == 0) {
// Loop by character through the email string for the @ symbol, count the number of instances
for (i=0; i
count = count+1;
}
}
// If there is not 1 instance (0 or more than 1) then throw an error.
if (count != 1) {
Err = 2;
}
}
// Split the email string by the @ sign, forming the name portion and the domain portion.
if (Err == 0) {
splitEmail = mail.split(”@”);
emailName = splitEmail[0];
emailDom = splitEmail[1];
// #3 Verify minimum characters in name portion (minimum of 1), if not throw an error.
if (emailName.length<1) {
Err = 3;
}
// #4 Verify there is a . (dot) in the domain portion
if (emailDom.indexOf(”.”)<0) {
Err = 4;
} else {
// #5 Verify a minimum of 2 characters before the dot, if not throw an error.
// First split the domain portion by the . (dot)
splitDom = emailDom.split(”.”);
if (splitDom[0].length<1) {
Err = 5;
}
// #6 Verify a minimum of 2 characters after the dot, if not throw an error.
if (splitDom[1].length<2) {
Err = 6;
}
}
}
ErrMess = ["1", "0", "0", "0", "0", "0", "0"];
if (ErrMess[Err] == “1″) {
} else {
msgError=”Revise el campo [EMAIL]\nNo tiene formato válido”
swError=1
}
if(nombre.length==0)
{
swError=1
msgError=”Complete el campo [NOMBRE]“
}else if(apellido.length==0)
{
swError=1
msgError=”Complete el campo [APELLIDO]“
}else if(telefono.length==0)
{
swError=1
msgError=”Complete el campo Telefono”
}/*else if(dia.length==0)
{
swError=1
msgError=”Complete el campo Dia de Nacimiento”
}else if(mes.length==0)
{
swError=1
msgError=”Complete el campo Mes de Nacimiento”
}else if(anio.length==0)
{
swError=1
msgError=”Complete el campo Anio de Nacimiento”
}*/else if(mail.length==0)
{
swError=1
msgError=”Complete el campo [EMAIL]“
}else if(comentario.length==0)
{
swError=1
msgError=”Complete el campo [MENSAJE]“
}
if (swError != 1) {
trace(”OKIS”)
loadVariablesNum(”contacto/contacto_proceso.php”, “”,”POST”);
gotoAndPlay(”ok”);
} else {
trace(”error”)
texto=msgError
gotoAndPlay(”error”);
}
}
como hago lo mismo en asp?
Como hacemos cuando la prueba del servidor de envio de mensaje nos da negativa?. gracias
xplorador, muy bueno,pero a mi el campo titulo no llega al mail, para que esta entonces por que el asunto del mail esta en el send.php y ese titulo no me aparece ni siquiera en el cuerpo del mensaje…?
por que?
Hola, felicito al autor por este excelente tutorial que me ha sido de mucha utilidad para crear mi formulario con flash y PHP.
Referente al código para que aparezca el Asunto del mensaje, hay que hacer los siguientes cambios en el archivo send.php:
sustituir la línea:
$subject = “Desde el Sitio.. =)”;
Por esto:
$subject = $_POST["titulo"];
Espero que esto les funcione al igual que a mi.
Saludos cordiales.
Roberto Flores
cuando este formulario va en un .swf, q es llamado mediante loadMovie no funciona. saben xq???
Excelente solución,fácil y ràpido felicidades..!
Está muy bueno el tutorial, gracias.
Tengo una duda, ¿Existe alguna posibilidad de poner algún botón de opciones o un pulldown en el formulario?
// http://macphistoblog.com //
Gracias Pressions!
Copie y pegue el codigo que vos pusiste y anduvo barbaro!
Mil gracias!
hola, hago la prueba y el mail me llega perfecto, cuando implemento todo, es decir bajo el archivo zip y lo suba a mi servidor que recien probe, me devuelve problemas con el servidor intente de nuevo, que puede ser?
Hola, lo subi a mi web para probar, me dice su mensaje se ah enviado, pero nunca me llega el mensaje a la casilla, que puede ser? Gracias!! Saludos
Muy bueno el dato!!!! Me sirvió mucho.
GRACIAS!!!!!!
Estoy haciendo una pagina para nuestra banda y puse el formulario, la prueba del principio todo bien, pero al ponerlo en la pagina no me llega el mail dice que se envia. Que hay que modificar del codigo en flash y en php? Otra consulta, hay una forma para que lo que vayan enviando los mensajes, se vean automaticamente en la pagina? gracias
Antonio Bueno, Hola laurapgarcia, escribes mal el código PHP.
la variable $contenido = “(lo que sea)”;
toma el valor (lo que sea), mientras que si le pones el punto (.) delante del igual lo que haces es concatenar el texto acontinuación.
Te falta el . delante del igual en todas las líneas menos el la primera de la variable.
Quedará así:
$contenido = $_POST["nombre"].” \n”;
$contenido .= $_POST["direccion"].” \n”;
$contenido .= $_POST["poblacion"].” \n”;
$contenido .= $_POST["provincia"].” \n”;
$contenido .= $_POST["codigopostal"].” \n”;
$contenido .= $_POST["telefono"].” \n”;
$contenido .= $_POST["email"].” \n”;
$contenido .= $_POST["modeloprenda"].” \n”;
$contenido .= $_POST["mensaje"].”\n\n”;Un saludo Antonio Bueno
portaleso.com
Hice todo, hice la prueba inicial y todo lo demás. Y al enviarlo aparece que ya fue enviado pero no llega al destino de correo. ¿por que?
Ya lo intenté de muchas maneras y no resulta. Envio mi codigo por si alguien puede ayudarme, llevo toda la noche con lo mismo.
EN PHP quedó así:
< ?php
if(isset($_POST["nombre"]) && isset($_POST["titulo"]) && isset($_POST["mail"]) && isset($_POST["mensaje"]) ){
$fecha = date(”D-M-y H:i”);
$mymail = “bluteamstudios@hotmail.com”;
$subject = “Desde el Sitio.. =)”;
$contenido = $_POST["nombre"].” Escribio :\n”;
$contenido .= $_POST["mensaje"].”\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&”;
}
?>
EN FLASH ASI:
enviar = function () { if (email_txt.text.length && nombre_txt.length && titulo_txt.length && mensaje_txt.length) {if (email_txt.text.indexOf(”@”) != -1 && email_txt.text.indexOf(”.”) != -1) {form_lv = new LoadVars();form_lv.nombre = nombre_txt.text;form_lv.mail = email_txt.text;form_lv.mensaje = mensaje_txt.text;form_lv.titulo = titulo_txt.text;form_lv.sendAndLoad(”http://www.atdsensores.com/send.php”, form_lv, “POST”);mensaje_txt.text = “Enviando Mensaje..”;nombre_txt.text = “”;email_txt.text = “”;titulo_txt.text = “”;form_lv.onLoad = function() {trace(”LLEGO”);if (this.estatus == “ok”) {mensaje_txt.text = “Tu mensaje fue enviado…”;nombre_txt.text = “”;email_txt.text = “”;titulo_txt.text = “”;} else {mensaje_txt.text = “Problemas con el servidor\nIntentalo de Nuevo”;}};} else {email_txt.text = “Correo Invalido”;}} else {email_txt.text = “Dato Necesario”;nombre_txt.text = “Dato Necesario”;titulo_txt.text = “Dato Necesario”;mensaje_txt.text = “Dato Necesario”;}};
borrar = function () { nombre_txt.text = “”;email_txt.text = “”;mensaje_txt.text = “”;titulo_txt.text = “”;};
enviar_btn.onRelease = enviar;
borrar_btn.onRelease = borrar;
Hola! Estoy haciendo mi primer form…..y tgo varias dudas, alguien podria chequearmelo sin funcionaria correctamente????….?
[COLOR="green"]en Flash:[/COLOR] ( funcion enviar) :on (release) {
msgError=”"
swError=0;
count = 0;
Err = 0;
/*
empresa=_parent.empresa
mail=_parent.mail
nombre=_parent.nombre
tema=_parent.tema
comentario=_parent.comentario
*/
// #1 Check for invalid characters
// Create an arroay of invalid characters
invChars = new Array(” “, “#”, “$”, “%”, “!”, “^”, “~”, “‘”, “*”, “(”, “)”, “,”, “< ", ">“, “/”, “\\”);
// Loop through Array and see if there are any matches, if yes then throw and error.
for (i=0; i
Err = 1;
}
}
// #2 If passed previous error step >>> Check the @ symbol (1 instance of the symbol)
if (Err == 0) {
// Loop by character through the email string for the @ symbol, count the number of instances
for (i=0; i
count = count+1;
}
}
// If there is not 1 instance (0 or more than 1) then throw an error.
if (count != 1) {
Err = 2;
}
}
// Split the email string by the @ sign, forming the name portion and the domain portion.
if (Err == 0) {
splitEmail = mail.split(”@”);
emailName = splitEmail[0];
emailDom = splitEmail[1];
// #3 Verify minimum characters in name portion (minimum of 1), if not throw an error.
if (emailName.length<1) {
Err = 3;
}
// #4 Verify there is a . (dot) in the domain portion
if (emailDom.indexOf(”.”)<0) {
Err = 4;
} else {
// #5 Verify a minimum of 2 characters before the dot, if not throw an error.
// First split the domain portion by the . (dot)
splitDom = emailDom.split(”.”);
if (splitDom[0].length<1) {
Err = 5;
}
// #6 Verify a minimum of 2 characters after the dot, if not throw an error.
if (splitDom[1].length<2) {
Err = 6;
}
}
}
ErrMess = ["1", "0", "0", "0", "0", "0", "0"];
if (ErrMess[Err] == “1″) {
} else {
msgError=”Revise el campo [EMAIL]\nNo tiene formato válido”
swError=1
}
if(nombre.length==0)
{
swError=1
msgError=”Complete el campo [NOMBRE]“
}else if(apellido.length==0)
{
swError=1
msgError=”Complete el campo [APELLIDO]“
}else if(telefono.length==0)
{
swError=1
msgError=”Complete el campo Telefono”
}/*else if(dia.length==0)
{
swError=1
msgError=”Complete el campo Dia de Nacimiento”
}else if(mes.length==0)
{
swError=1
msgError=”Complete el campo Mes de Nacimiento”
}else if(anio.length==0)
{
swError=1
msgError=”Complete el campo Anio de Nacimiento”
}*/else if(mail.length==0)
{
swError=1
msgError=”Complete el campo [EMAIL]“
}else if(comentario.length==0)
{
swError=1
msgError=”Complete el campo [MENSAJE]“
}
[COLOR="Red"]if (swError != 1) {
trace(”OKIS”)
loadVariablesNum(”enviar_email.php”, “”,”POST”);
gotoAndPlay(”ok”);
} else {
trace(”error”)
texto=msgError
gotoAndPlay(”error”);
} [/COLOR]}
[COLOR="Green"]
y mi php es:[/COLOR]
$destinatario=”xx@uolsinectis.com.ar”;
$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=”Contactar”;
//El cuerpo del mensaje:
$cuerpo=’ Ha recibido un email de ‘.$_POST['nombre'].’ ( ‘.$_POST['apellido']. ‘( ‘.$_POST['telefono']. ‘( ‘.$_POST['email'].’ ) con el siguiente contenido:’;
$cuerpo.=’
‘.$_POST['texto'].’
‘;
//la persona wue envia el email.
$de=$_POST['email'];
Miles de gracias!
si usan este software “CoffeeCup Flash Form Builder” les simplificara mucho el tema de formularios. Espero les sirva.
Atte.
jmexsail@hotmail.com
El formulario me llega pero con los campos vacios.
O sea lo que escriben en las cajas no sale pero me llega el mail.
Alguien sabe que me puede estar pasando.
Probando en otros hostings me anda perfecto pero en el que lo presiso no.
Saludos.
Maestros del Web es el punto de encuentro para los entusiastas de la red.
Creative Commons by-nc-sa 3.0 | Política de Privacidad | CMS: Wordpress