jaidelson 0 Denunciar post Postado Agosto 4, 2010 Pessoal estou de volta! Agora é vero. Estou assistindo aulas de AS3 pela net e estou fascinado pelo que se pode fazer com ele. Vaoms ao que interessa. Como estou no início eu não estou ainda a ponto de identificar erros ou possíveis erros em scripts prontos. Na pressa e urgencia usei um template pronto pra fazer um site de uma cliente ( vejam o link: http://www.johns.com.br ) mas no ítem fale com a gente ele dá pau em alguns acentos e nas letras W e Z. Postei um tópico em PHP (já que ele chama um php pra enviar o form) e o pessoal me falou que era problema no flash. Então estou postando o código para vcs me ajudar a achar o que está acontecendo. Tenho duas alternativas: Ou eu procuro outro form em flash e troco ou acho o erro no que já está pronto e sigo em frente. Aguardo ajuda dos experts. Segue o código: // C o p y r i g h t © f l a s h m o . c o m // D e v e l o p e d b y M i n T h u contact_name.text = contact_email.text = contact_subject.text = contact_message.text = message_status.text = ""; send_button.addEventListener(MouseEvent.CLICK, submit); reset_button.addEventListener(MouseEvent.CLICK, reset); var timer:Timer; var var_load:URLLoader = new URLLoader; var URL_request:URLRequest = new URLRequest( "send_email.php" ); URL_request.method = URLRequestMethod.POST; function submit(e:MouseEvent):void { if( contact_name.text == "" || contact_email.text == "" || contact_subject.text == "" || contact_message.text == "" ) { message_status.text = "* Please fill up all text fields."; } else if( !validate_email(contact_email.text) ) { message_status.text = "* Please enter the valid email address."; } else { message_status.text = "sending..."; var email_data:String = "name=" + contact_name.text + "&email=" + contact_email.text + "&subject=" + contact_subject.text + "&message=" + contact_message.text; var URL_vars:URLVariables = new URLVariables(email_data); URL_vars.dataFormat = URLLoaderDataFormat.TEXT; URL_request.data = URL_vars; var_load.load( URL_request ); var_load.addEventListener(Event.COMPLETE, receive_response ); } } function reset(e:MouseEvent):void { contact_name.text = contact_email.text = contact_subject.text = contact_message.text = message_status.text = ""; } function validate_email(s:String):Boolean { var p:RegExp = /(\w|[_.\-])+@((\w|-)+\.)+\w{2,4}+/; var r:Object = p.exec(s); if( r == null ) { return false; } return true; } function receive_response(e:Event):void { var loader:URLLoader = URLLoader(e.target); var email_status = new URLVariables(loader.data).success; if( email_status == "yes" ) { message_status.text = "Success! Your message was sent."; timer = new Timer(500); timer.addEventListener(TimerEvent.TIMER, on_timer); timer.start(); } else { message_status.text = "Failed! Your message cannot sent."; } } function on_timer(te:TimerEvent):void { if( timer.currentCount >= 10 ) { contact_name.text = contact_email.text = contact_subject.text = contact_message.text = message_status.text = ""; timer.removeEventListener(TimerEvent.TIMER, on_timer); } } Compartilhar este post Link para o post Compartilhar em outros sites
Thiago de Oliveira Cruz 21 Denunciar post Postado Agosto 4, 2010 Verifique as caixas de texto se os embeds incluem latin... se for Flash extrangeiro raramente vai ter embed de LATIN e por isso não tem acentuação. Depois utilize o código System.useCodePage = true. Que pode resolver seu problema só com esses dois passos... Se as caixas de texto já se encontram com a acentuação correta e todas as letras normais quando você digita. Mas quando você envia o e-mail ele chega para o cliente acentuação quebrada. Ai você tem que adicionar HEADERS ao seu mail.php para que ele faça codificação UTF-8 que utilizado pelo flash para que ocorra tudo corretamente. Abraços Compartilhar este post Link para o post Compartilhar em outros sites