Comunidad de diseño web y desarrollo en internet online

Formulario de contacto flash AS3, funciona para cuentas Gmai

Citar            
MensajeEscrito el 05 Oct 2008 10:46 pm

Código ActionScript :

Actionscript:
//el php encargado de enviar los datos
const FILE:String = "formmail.php";
//aca puden indicar el dominio de su sitio si quieren probarlo desde el player de flash
var dominio:String = "";
//como voy a recibir los datos que me devuelva el php> como variables
var dataFormat:String = URLLoaderDataFormat.VARIABLES;
//patron o expresion regular para verificar un email
var patronEmail:RegExp = /(^[0-9a-zA-Z]+(?:[._][0-9a-zA-Z]+)*)@([0-9a-zA-Z]+(?:[._-][0-9a-zA-Z]+)*\.[0-9a-zA-Z]{2,3})$/;
//nuevo objeto para las variables
var Variables:URLVariables = new URLVariables();
//destinatario o casilla de destino, puede ser gmail, dominio propio y HOTMAIL!!!!
Variables.recipient = "[email protected]";
//Titulo del mensaje
Variables.subject = "Formulario desde la web";
//necesario para manejo de variables
var urlRequ:URLRequest = new URLRequest(dominio+FILE);
urlRequ.method = URLRequestMethod.POST;
urlRequ.data = Variables;
//objeto que trae se encarga de enviar y recibir los datos al php
var urlLoad:URLLoader = new URLLoader();
//aqui formateo los resultados recibidos del php en modo variables
urlLoad.dataFormat = dataFormat;
//accion del boton enviar
enviar_btn.addEventListener(MouseEvent.MOUSE_DOWN,enviarForm);
//funcion encargada de enviar los datos al php
function enviarForm(obj:Event) {
if (patronEmail.test(email_txt.text)==true && nombre_txt.text !="" ) {
resultado_txt.text ="";
Variables.Cosulta = consulta_txt.text;
Variables.email = email_txt.text;
Variables.Nombre = nombre_txt.text;
urlLoad.load(urlRequ);
} else {
resultado_txt.text="Complete los campos!";
}
}
//escuchadores de que paso con los datos del lado del servidor
urlLoad.addEventListener(Event.COMPLETE, envioCompleto);
urlLoad.addEventListener(IOErrorEvent.IO_ERROR, errorEnvio);
//si el envio fue correcto
function envioCompleto(obj:Event) {
//si el php me dio el ok de que fue enviado
if (urlLoad.data.resultado=="ok") {
resultado_txt.text="Mensaje enviado";
consulta_txt.text="";
email_txt.text ="";
nombre_txt.text="";
} else {
resultado_txt.text="Error al enviar";
}
}
//si hay problemas con el php
function errorEnvio(obj:Event) {
resultado_txt.text="Error en el servidor!";
}
//evento para el campo de texto cuando dejan de hacer foco
email_txt.addEventListener(FocusEvent.FOCUS_OUT,verificar);
//verifico si el email es correcto!
function verificar(obj:Event) {
if (patronEmail.test(email_txt.text)==false) {
email_txt.text ="*Email incorrecto";
stage.focus = email_txt;
var letras:int = email_txt.selectionEndIndex;
email_txt.setSelection(0,17);
}
}



Archivo
http://elojodelahormiga.com.mx/archivos/emailAS3.zip

etiqueta código lista :|

Por EmmanuelRM

7 de clabLevel



 

safari
Citar            
MensajeEscrito el 06 Oct 2008 10:19 am
Si esto es un aporte, dale formato a tu código y publícalo en aportes
Si es una pregunta, te olvidaste de formularla

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 06 Oct 2008 02:59 pm
Gracias Jorge, es mi primer aporte y olvide el formato.

Por EmmanuelRM

7 de clabLevel



 

safari
Citar            
MensajeEscrito el 06 Oct 2008 03:01 pm

EmmanuelRM escribió:

Actionscript:

Código ActionScript :

//el php encargado de enviar los datos
const FILE:String = "formmail.php";
//aca puden indicar el dominio de su sitio si quieren probarlo desde el player de flash
var dominio:String = "";
//como voy a recibir los datos que me devuelva el php> como variables
var dataFormat:String = URLLoaderDataFormat.VARIABLES;
//patron o expresion regular para verificar un email
var patronEmail:RegExp = /(^[0-9a-zA-Z]+(?:[._][0-9a-zA-Z]+)*)@([0-9a-zA-Z]+(?:[._-][0-9a-zA-Z]+)*\.[0-9a-zA-Z]{2,3})$/;
//nuevo objeto para las variables
var Variables:URLVariables = new URLVariables();
//destinatario o casilla de destino, puede ser gmail, dominio propio y HOTMAIL!!!!
Variables.recipient = "[email protected]";
//Titulo del mensaje
Variables.subject = "Formulario desde la web";
//necesario para manejo de variables
var urlRequ:URLRequest = new URLRequest(dominio+FILE);
urlRequ.method = URLRequestMethod.POST;
urlRequ.data = Variables;
//objeto que trae se encarga de enviar y recibir los datos al php
var urlLoad:URLLoader = new URLLoader();
//aqui formateo los resultados recibidos del php en modo variables
urlLoad.dataFormat = dataFormat;
//accion del boton enviar
enviar_btn.addEventListener(MouseEvent.MOUSE_DOWN,enviarForm);
//funcion encargada de enviar los datos al php
function enviarForm(obj:Event) {
if (patronEmail.test(email_txt.text)==true && nombre_txt.text !="" ) {
resultado_txt.text ="";
Variables.Cosulta = consulta_txt.text;
Variables.email = email_txt.text;
Variables.Nombre = nombre_txt.text;
urlLoad.load(urlRequ);
} else {
resultado_txt.text="Complete los campos!";
}
}
//escuchadores de que paso con los datos del lado del servidor
urlLoad.addEventListener(Event.COMPLETE, envioCompleto);
urlLoad.addEventListener(IOErrorEvent.IO_ERROR, errorEnvio);
//si el envio fue correcto
function envioCompleto(obj:Event) {
//si el php me dio el ok de que fue enviado
if (urlLoad.data.resultado=="ok") {
resultado_txt.text="Mensaje enviado";
consulta_txt.text="";
email_txt.text ="";
nombre_txt.text="";
} else {
resultado_txt.text="Error al enviar";
}
}
//si hay problemas con el php
function errorEnvio(obj:Event) {
resultado_txt.text="Error en el servidor!";
}
//evento para el campo de texto cuando dejan de hacer foco
email_txt.addEventListener(FocusEvent.FOCUS_OUT,verificar);
//verifico si el email es correcto!
function verificar(obj:Event) {
if (patronEmail.test(email_txt.text)==false) {
email_txt.text ="*Email incorrecto";
stage.focus = email_txt;
var letras:int = email_txt.selectionEndIndex;
email_txt.setSelection(0,17);
}
}



Archivo
http://elojodelahormiga.com.mx/archivos/emailAS3.zip

Por EmmanuelRM

7 de clabLevel



 

safari
Citar            
MensajeEscrito el 03 Feb 2009 05:44 am
TODO EL CODIGO ESTA MAL NO LES VA FUCNIONAR
LES DEJO ESTE QUE FUNCIONA AL PELO CODIGO AS3 Y PHP
PARA EL BOTON ENVIAR NO LO HAGOAN COMO BOTON SINO COMO CLIP DE PELICULA

Código ActionScript :

System.useCodePage = true;
var tempo:Timer = new Timer( 3000, 1 ); 
   tempo.addEventListener( TimerEvent.TIMER, limpaAviso );

enviarBtn.addEventListener( MouseEvent.CLICK, enviaMensage );

function enviaMensagem( event:MouseEvent ):void{
   if(nombreTxt.text == "" || empresaTxt.text == "" || emailTxt.text == "" || mensajeTxt.text == ""){
      avisoTxt.text = "Rellena todos los campos.";
      tempo.start();
   } else{ 
      enviaDadosParaPHP();
   }
}

function enviaDadosParaPHP(){
   avisoTxt.text = "Enviando mensaje...";
   
   var variaveis:URLVariables = new URLVariables();
      variaveis.nombrePhp = nombreTxt.text;
      variaveis.empresaPhp = empresaTxt.text;
      variaveis.emailPhp = emailTxt.text;
      variaveis.mensajePhp = mensajeTxt.text;
      
      var urlPhp:URLRequest = new URLRequest("correo.php");
      urlPhp.method = URLRequestMethod.POST;
      urlPhp.data = variaveis;
      
      var loader:URLLoader = new URLLoader();
       loader.addEventListener( Event.COMPLETE, envio );
       loader.addEventListener( IOErrorEvent.IO_ERROR, erroNoEnvio );
       loader.load( urlPhp );
}

function envio( e:Event ):void{
   avisoTxt.text = "Mensaje enviado!";
   limpaCampos();
    tempo.start();
}

function erroNoEnvio( e:IOErrorEvent ):void{
   avisoTxt.text = "Error intenta nuevamente.";
    tempo.start();
}
function limpaCampos(){
   nombreTxt.text = empresaTxt.text = emailTxt.text = mensajeTxt.text = "";
}
 
function limpaAviso( e:TimerEvent ):void {
   avisoTxt.text = "";
}

Código PHP :

AHORA EL CODIGO PHP. NOMBRA EL ARCHIVO PHP (correo.php)
<?php
$enviaPara = 'TU DOMINIO.COM';
$campoNombre = $_POST['nombrePhp']; //retorna o valor digitado no campo "nomeTxt" do Flash
$campoEmpresa = $_POST['empresaPhp']; //retorna o valor digitado no campo "emailTxt" do Flash
$campoEmail = $_POST['emailPhp']; //retorna o valor digitado no campo "assuntoTxt" do Flash
$campoMensaje = $_POST['mensajePhp']; //retorna o valor digitado no 
$subject = 'Desde mi web';

$mensagem = "Nombre: ".$_POST['nombrePhp']." \n";
$mensagem .= "Empresa: ".$_POST['empresaPhp']." \n";
$mensagem .= "E-mail: ".$_POST['emailPhp']." \n\n";
$mensagem .= "Mensaje: \n". $_POST['mensajePhp'];

$mail_headers = 'From: '.$_POST['emailPhp'];

mail($enviaPara, $subject, $mensagem, $mail_headers);
?>

Por juanzear

36 de clabLevel



 

msie7
Citar            
MensajeEscrito el 03 Feb 2009 05:48 am
ESPERO LES SIRVA A MI ME FUCNIONA MUY BIEN IGUAL PASE MIS BUENAS HORAS DESARROLANDOLO CUALQUIER DUDA NO DUDEN EN HACERMELA SABER.
POR OTRO LADO EL CODIGO DE EEMMANUEL TIENE VARIOS ERRORES AL ENVIAR EL PHP DESDE FALSH ESO FUE LO QUE LE FALTO A MI MODO DE VER.

Por juanzear

36 de clabLevel



 

msie7
Citar            
MensajeEscrito el 03 Feb 2009 11:54 am
Hola juanzear amigo.
Es notable tu código, de alto vuelo técnico y se nota nada mas verlo las horas que habrás pasado sobre él afinando cada línea. Pero es bastante feo arrancar criticando el trabajo de otro (y encima en mayúsculas, my god!)
Si quieres hacer tu tip, haz un nuevo POST y lo pones en la sección de tips, allí lo verán los moderadores correspondientes.
Si quieres criticar algún error de lo posteado, hazlo con precisión y respeto (y sin mayúsculas)

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 04 Feb 2009 12:15 am

solisarg escribió:

Hola juanzear amigo.
Es notable tu código, de alto vuelo técnico y se nota nada mas verlo las horas que habrás pasado sobre él afinando cada línea. Pero es bastante feo arrancar criticando el trabajo de otro (y encima en mayúsculas, my god!)
Si quieres hacer tu tip, haz un nuevo POST y lo pones en la sección de tips, allí lo verán los moderadores correspondientes.
Si quieres criticar algún error de lo posteado, hazlo con precisión y respeto (y sin mayúsculas)

Jorge


donde esta la estrellita para jorge por su diplomacia ^^

Por penHolder

Claber

4661 de clabLevel

39 tutoriales
2 articulos

Genero:Masculino   Premio_Secretos

| mdz |

firefox
Citar            
MensajeEscrito el 04 Feb 2009 12:18 am

penHolder escribió:

solisarg escribió:

Hola juanzear amigo.
Es notable tu código, de alto vuelo técnico y se nota nada mas verlo las horas que habrás pasado sobre él afinando cada línea. Pero es bastante feo arrancar criticando el trabajo de otro (y encima en mayúsculas, my god!)
Si quieres hacer tu tip, haz un nuevo POST y lo pones en la sección de tips, allí lo verán los moderadores correspondientes.
Si quieres criticar algún error de lo posteado, hazlo con precisión y respeto (y sin mayúsculas)

Jorge


donde esta la estrellita para jorge por su diplomacia ^^
bueno mi intencion no era ofender a nadie asi que pido disculpas y lo de la mayuscula se me fue el mensaje asi lo unico era poder contribuir un poco nada mas

Por juanzear

36 de clabLevel



 

msie7
Citar            
MensajeEscrito el 24 Feb 2009 10:26 pm
pregunta

sirve para cuentas yahoo y hotmail???


gracias

juako

Por yojuako

41 de clabLevel



 

firefox
Citar            
MensajeEscrito el 24 Feb 2009 10:31 pm
si para cualquier tipo de cuenta.
Cambia en el script php

$enviaPara = 'TU DOMINIO.COM'; (tu cuenta de correo)
y listo lo subes al servidor

Por juanzear

36 de clabLevel



 

msie7
Citar            
MensajeEscrito el 18 Mar 2009 12:36 pm
tengo una duda... que objeto de flash es el de "enviaMensage ?"
porque el campo de texto dinamico es avisoTxt , no?
gracias

Por taccoli

12 de clabLevel



 

firefox
Citar            
MensajeEscrito el 18 Mar 2009 02:03 pm
no es un texto dinamico es el evento del boton enviar el emensaje pero no aparece como texto dianmico

Por juanzear

36 de clabLevel



 

msie7
Citar            
MensajeEscrito el 21 Jun 2009 09:36 pm
primero que nada
felicitaciones, me funciona a la perfeccion

segundo

pregunta,

se puede enviar el mensaje a mas de una direccion?

gracias

juako

Por yojuako

41 de clabLevel



 

firefox
Citar            
MensajeEscrito el 30 Jun 2009 09:07 pm
no te entiendo enviarlo a varios correos a la vez? no lo he intentado pero creo que tendrias que hacer uno por cada correo

Por juanzear

36 de clabLevel



 

msie
Citar            
MensajeEscrito el 30 Jun 2009 11:00 pm

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 14 Jul 2009 02:04 am
mil gracias jorge, sos un groso

probe y funciona de diez

saludos

juako

Por yojuako

41 de clabLevel



 

firefox
Citar            
MensajeEscrito el 24 Jul 2009 10:04 am
Muy buenas. A mi no me funciona. El boton enviarBtn como Movie clip directamente no se activa cuando paso el cursor por encima. Si le pongo como boton si se activa el cursor, pero no envía nada. El php lo tengo en la raiz y sustituyo correo.php por http://www.dominio.com/send_contacto.php en el flash, y el php se llama send_contacto.php.

No se me ocurre que puede ir mal. El servidor funciona para otros scripts, y con otros formularios AS3 funciona. Estaba probando este porque parecia mas completo.


Alguine tiene un fla para dejarme y que vea si me falta algo en el panel de propiedades o algo asi?

Por rakeljuice

34 de clabLevel



 

msie
Citar            
MensajeEscrito el 24 Jul 2009 12:35 pm
buenas, no he encontrado manera, pero tengo otro formulario que si me funciona pero le faltan funcionalidades como borrar campos y comprobarlos que este sí tiene. Los he intentado mezclar, y hay algo que no va bien. He dejado un nuevo tema en el for al respecto, por si alguien quiere pasarse a verlo.

Gracias, rakeljuice

Por rakeljuice

34 de clabLevel



 

msie
Citar            
MensajeEscrito el 06 Nov 2009 05:10 am
dios funciona funcionaaa!!! ^^ ... juanzear Gran aporte busque por tres días!!! hasta que di con tu código depurado y anda de un lindo jajaja Mil Gracias!!!

Por Bennu

23 de clabLevel



Genero:Femenino  

México

firefox
Citar            
MensajeEscrito el 04 Ene 2010 02:11 am

rakeljuice escribió:

Muy buenas. A mi no me funciona. El boton enviarBtn como Movie clip directamente no se activa cuando paso el cursor por encima. Si le pongo como boton si se activa el cursor, pero no envía nada. El php lo tengo en la raiz y sustituyo correo.php por http://www.dominio.com/send_contacto.php en el flash, y el php se llama send_contacto.php.

No se me ocurre que puede ir mal. El servidor funciona para otros scripts, y con otros formularios AS3 funciona. Estaba probando este porque parecia mas completo.


Alguine tiene un fla para dejarme y que vea si me falta algo en el panel de propiedades o algo asi?


no entiendo tu pregunta pero si quieres te envio un archivo para que verifiques donde esta tu error dame una direccione y te o envio

Por juanzear

36 de clabLevel



 

chrome
Citar            
MensajeEscrito el 04 Ene 2010 07:10 pm
con el botón enviar creas el movie clip y dentro del movie clip creas un botón para que cuando lo pases por encima se active y asi pueda funcionar el boton y enviar el correo respecto al php no entiendo bien tu pregunta dame un correo te envio un ejemplo

Por juanzear

36 de clabLevel



 

chrome
Citar            
MensajeEscrito el 01 Jun 2010 05:16 am

solisarg escribió:

Tienes que poner varias direcciones separadas por coma, ejemplo
En el PHP:

Código :

$enviaPara = "[email protected],[email protected]";
(...)
c


Jorge


Disculpa no me funciona el poner 2 mails separado por comas solo me llega al primer mail, acaso en la funcion que pusiste mail($para, etc ..... deve de ir algo es que yo tengo el original mail($enviaPara, $subject, $mensagem, $mail_headers);

Por D-Mx

4 de clabLevel



 

firefox
Citar            
MensajeEscrito el 22 Feb 2011 08:26 pm
hola he usado este codigo, me ha funcionado perfecto muchas gracias, ahora no se que hacer con el php, me podrias ayudar?

Por gabriela_mty

3 de clabLevel



 

safari
Citar            
MensajeEscrito el 22 Feb 2011 08:33 pm
hola he usado este codigo, me ha funcionado perfecto muchas gracias, ahora no se que hacer con el php, me podrias ayudar?

Por gabriela_mty

3 de clabLevel



 

safari
Citar            
MensajeEscrito el 06 Jul 2011 02:13 pm
buenas,

hace tiempo que uso este formulario y funciona.

sin embargo, desde que aparecio en flash el TLFtextfield he tenido mis problemas.


no me funciona con el texto clasico, y con el TLF menos

alguno sabe como hacerlo funcionar con el TLF. no me tira ningun error pero el mail nunca llega

agradeceria mucho una respuesta

saludos y mil gracias anticipadas

juako

Por yojuako

41 de clabLevel



 

chrome

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.