Comunidad de diseño web y desarrollo en internet online

Problemas con Eventos en AS3

Citar            
MensajeEscrito el 06 May 2011 08:40 pm
hola, antes que nada saludos! espero me pueda ayudar alguien por allí!!

les cuento, estoy intentando con este código enviar un correo electrónico desde as3, y lo hace perfectamente con php y la clase phpmailer, el problema viene porque se tarda y necesito que el usuario sepa que se esta enviando el correo mediante un progressbar o algo por el estilo, de momento intento es saber cuando envío el correo, pero como saberlo si no puedo declarar un evento Event.COMPLETE dentro del evento Event.MouseEvent!! por favor ayudenme y si no se puede de esta manera ayudenme de otra por favor.

Código ActionScript :

import flash.events.*; 
import flash.net.FileFilter; 
import flash.net.FileReference; 
import flash.net.URLRequest; 
import flash.geom.Transform; 
import flash.geom.ColorTransform; 
import fl.transitions.*; 
import fl.transitions.easing.*; 
import flash.display.MovieClip; 
import flash.external.ExternalInterface; 
 
var simbolo:MovieClip; 
 
Nombre.TEXTO.tabIndex = 1; 
Apellido.TEXTO.tabIndex = 2; 
email.TEXTO.tabIndex = 3; 
Telefono.TEXTO.tabIndex = 4; 
Comentario.TEXTO.tabIndex = 5; 
 
Enviar.C_Enviar.addEventListener(MouseEvent.MOUSE_OVER, OVER); 
Enviar.C_Enviar.addEventListener(MouseEvent.CLICK, CLICK); 
Enviar.C_Enviar.addEventListener(MouseEvent.MOUSE_OUT, OUT); 
 
function OVER (Event:MouseEvent){ 
   var elclip:MovieClip; 
   elclip = MovieClip(Event.target); 
   MovieClip(elclip.parent).gotoAndPlay(2); 
   Mouse.cursor = MouseCursor.BUTTON; 
   trace("OVER:"+Event.target.name); 
} 
 
function CLICK (Event:MouseEvent){ 
   Mouse.cursor = MouseCursor.BUTTON; 
   trace("CLICK:"+Event.target.name); 
   var Nombre=this.Nombre.TEXTO.text; 
   var Apellido=this.Apellido.TEXTO.text; 
   var email=this.email.TEXTO.text; 
   var Telefono=this.Telefono.TEXTO.text; 
   var Comentario=this.Comentario.TEXTO.text; 
    
   var url:String = "codigos/EnviarCorreo.php?Nombre="+Nombre+"&Apellido="+Apellido+"&email="+email+"&Telefono="+Telefono+"&Comentario="+Comentario+"&[email protected]";   //pagina que voy a llamar para que pueda enviar el correo 
   var Cadena:Object=ExternalInterface.call("AjaxDMensaje", url, "msj"); 
   Cadena.addEventListener(Event.COMPLETE, PRUEBA); 
} 
 
function OUT (Event:MouseEvent){ 
   var elclip:MovieClip; 
   elclip = MovieClip(Event.target); 
   MovieClip(elclip.parent).gotoAndPlay(16); 
   Mouse.cursor = MouseCursor.ARROW 
   trace("OUT:"+Event.target.name); 
} 
function PRUEBA(e:Event){ 
   trace('ok');    
} 

Por Oslawso

6 de clabLevel



Genero:Masculino  

chrome
Citar            
MensajeEscrito el 09 May 2011 02:39 pm
Estás usando JS para llamar un PHP, cuando en realidad lo podrías hacer directamente con un URLLoader, el PHP devuelve un true o false si lo ha podido enviar y listo. Si no sabes enviar/cargar data en AS3 usando un URLLoader, mirate http://www.flash-db.com/Tutorials/savingAS3/savingData.php?page=1
En cuanto a la barra de progreso, no hay tal feedback, devuelve enseguida true o false.

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 09 May 2011 02:53 pm
Hola Jorge, gracias por responder!!
La verdad estoy usando un js para esto es porque necesito usar una función ajax para no tener que recargar la pagina ni nada por el estilo!! y tengo entendido que con el urlLoader se recarga la pagina o se crea una nueva pagina!!
En cuanto al progressbar no hay ningún problema, tengo uno de esos círculos que nunca dicen cuando termina o donde comienza pero da la sensación de que se esta realizando una tarea por detrás, lo que necesito es como sacarlo de escena luego que se termine el envío del correo, he revisado por ahí algunas funciones con el mismo externalInterface pero a mi no me funciona..

Saludos..
Oswaldo

Por Oslawso

6 de clabLevel



Genero:Masculino  

chrome
Citar            
MensajeEscrito el 09 May 2011 03:15 pm
El URLLoader no recarga la página, solo envia/carga info de la misma forma en que lo hace ajax

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 09 May 2011 03:31 pm
Ok jorge, gracias por responder!! voy a probarlo en este momento, comento los resultados

Por Oslawso

6 de clabLevel



Genero:Masculino  

chrome
Citar            
MensajeEscrito el 09 May 2011 03:41 pm
perfecto, funciono, gracias jorge!! saludos!!

Oswaldo

Por Oslawso

6 de clabLevel



Genero:Masculino  

chrome

 

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