Freelife 2 Denunciar post Postado Novembro 7, 2008 Galera... eu segui vários tutoriais para fazer o form de email, mas nenhum deu certo. Tentei fazer um que envia emails através de cfm, falhou, tentei outros através de php, falharam. O último que testei foi esse, um código simples a príncípio mas não funcionou, alguém me ajuda???!!! código do AS: stop(); //assim o cursor já começará no campo "nome" Selection.setFocus("nome"); //endereço do seu e-mail destinatario = "meuemail@servidor.org"; function enviar_email() { trace("enviando"); enviar = new LoadVars(); recebe = new LoadVars(); enviar.nome = nome.text; enviar.email = email.text; enviar.corpo = corpo.text; recebe.onLoad = function (ok) { trace("retorno:"+ok); if(ok == true){ trace("enviado"); } }; enviar.sendAndLoad("mail.php", 0, "GET"); } //envia o e-mail com a condicional abaixo //se você não sabe o caminho do detino do botão enviar, clique no ícone do "Insert Target Path" e //vá selecionando até encontrar o bt_enviar, assinale "absolute" _root.bt_enviar.onPress = function () { enviado =""; at = email.text.indexOf("@"); dot = email.text.lastIndexOf("."); if (at < dot && at != -1){ enviar_email() enviado = "Mensagem Enviada"; } else { enviado = "Erro nos dados"; } } //função para limpar os campos _root.bt_limpar.onPress = function() { nome.text = ""; email.text = ""; corpo.text = ""; } php <? if ($email != "" and $destinatario != "") { $cabecalho = "From: $email\nReply-To: $email"; $corpo .= "Nome = $nome .\n"; $corpo .= "Email = $email .\n"; $corpo .= "Mensagem = $mensagem .\n\n"; $corpo .="\n\n************************************* *****\n"; $corpo .= "**********************************************"; mail($destinatario, $assunto, $corpo, $cabecalho); echo ("&enviado=ok&"); } ?> espero que possam ajudar. flw obs: Quando eu faço o teste no site aparece como "mensagem enviada", porém não chega nada para o destinatário. Compartilhar este post Link para o post Compartilhar em outros sites
Thiago de Oliveira Cruz 21 Denunciar post Postado Novembro 7, 2008 -.- Todo mundo pega esse mesmo form é??? caraca... nunca vi... Bom vamos lá você quer 1 flash que envie... Nome, E-mail e Mensagem né? Então vamos lá vou ensinar como se faz again... já expliquei isso aqui umas 8 vezes kkkkkkk no flash você vai fazer o seguinte Coloque 4 imput text No relativo ao nome você vai nomear a variável de name No relativo ao e-amil você vai nomear a variável de email E a caixinha de mensagem você coloca a variável de msg Vai criar um ultimo que será o status e coloque a variável de status. o código do frame de actions vai ficar assim name = ""; email = ""; mensagem = ""; status = ""; O código do botão de envio vai ficar o seguinte on (release) { if (name == "") { status = "O nome esta vazio"; selection.setFocus("name"); } else if (email == "") { status = "O e-mail está vazio"; Selection.setFocus("email"); } else if (mensagem == "") { status = "Faltou a mensagem"; Selection.setFocus("mensagem"); } else { loadVariablesNum("mail.php", 0, "POST"); status = "Mensagem Enviada"; } } No mail.php você vai fazer o seguinte! <?php $recipient = "seuemail@seuhost.com"; $subject = "formulário de contato"; $msg = "nome: $name \n\n E-mail: $email \n\nMensagem: $mensagem"; $mailheaders = "From: seuemail@seuhost.com"; mail("$recipient", "$subject", "$msg", "$mailheaders"); ?> E prontooooooooo boa diversão :) Abraços PS: Esse código ai funciona pois uso ele em meu site -.- PS2: Não corrigi o problema do seu código, pq achei mais simples fazer outro. Fuiz Compartilhar este post Link para o post Compartilhar em outros sites
Freelife 2 Denunciar post Postado Novembro 7, 2008 -.- Todo mundo pega esse mesmo form é??? caraca... nunca vi... Bom vamos lá você quer 1 flash que envie... Nome, E-mail e Mensagem né? Então vamos lá vou ensinar como se faz again... já expliquei isso aqui umas 8 vezes kkkkkkk no flash você vai fazer o seguinte Coloque 4 imput text No relativo ao nome você vai nomear a variável de name No relativo ao e-amil você vai nomear a variável de email E a caixinha de mensagem você coloca a variável de msg Vai criar um ultimo que será o status e coloque a variável de status. o código do frame de actions vai ficar assim name = ""; email = ""; msg = ""; O código do botão de envio vai ficar o seguinte on (release) { if (name == "") { status = "O nome esta vazio"; selection.setFocus("name"); } else if (email == "") { status = "O e-mail está vazio"; Selection.setFocus("email"); } else if (msg == "") { status = "Faltou a mensagem"; Selection.setFocus("msg"); } else { loadVariablesNum("mail.php", 0, "POST"); status = "Mensagem Enviada"; } } No mail.php você vai fazer o seguinte! <?php $recipient = "seuemail@seuhost.com"; $subject = "formulário de contato"; $msg = "nome: $name \n\n E-mail: $email \n\nMensagem: $msg"; $mailheaders = "From: seuemail@seuhost.com"; mail("$recipient", "$subject", "$msg", "$mailheaders"); ?> E prontooooooooo boa diversão :) Abraços PS: Esse código ai funciona pois uso ele em meu site -.- PS2: Não corrigi o problema do seu código, pq achei mais simples fazer outro. Fuiz Tá beleza, valeu mesmo assim... você comentou que todo mundo pega essse form, na verdade eu peguei uns 4 ou 5...rsrsrs mas não consegui fazer nenhum funcionar por isso postei esse aí que era o menor deles. Vou tentar usar esse para teste, mas por acaso, você sabe como usar .cfm para o envio de emails? eu lí na bíblia do flash 8 fiz tudo como pedia o figurino mas dava o erro: "erro downloading content." Acha que pode ajudar??? Abraços e vlw ajuda... http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif obs; o código do botão: on (release) { if (name == "") { status = "O nome esta vazio"; selection.setFocus("nome"); } else if (email == "") { status = "O e-mail está vazio"; Selection.setFocus("email"); } else if (msg == "") { status = "Faltou a mensagem"; Selection.setFocus("msg"); } else { loadVariablesNum("mail.php", 0, "POST"); status = "Mensagem Enviada"; } } flw Compartilhar este post Link para o post Compartilhar em outros sites
Thiago de Oliveira Cruz 21 Denunciar post Postado Novembro 8, 2008 Bom ai tu tem de ler os artigos http://imasters.com.br/artigo/630/asp/...asp_cfm_ou_php/ http://flashmasters.net/forum/index.php?topic=4970.0 http://www.flashcfm.com/ Ai provavelmente vai achar sua resposta Eu não costumo trabalhar com ColdFusion...... Funciono melhor com php e asp :) Abraços Compartilhar este post Link para o post Compartilhar em outros sites
Freelife 2 Denunciar post Postado Novembro 8, 2008 Vlw... novamente valeu... vou ler esses artigos sim... mas cara... acho que to fazendo alguma coisa errada... não deu certo de novo... no site dá como mensagem enviada, mas não chega nada pra mim... o código... name = ""; email = ""; msg = ""; <?php $recipient = "meuemail@host.org"; $subject = "formulário de contato"; $msg = "nome: $name \n\n E-mail: $email \n\nMensagem: $msg"; $mailheaders = "From: jeanjap@adasntaines.org"; mail("$recipient", "$subject", "$msg", "$mailheaders"); ?> acho que tá tudo certo como você passou... mas o problema é que não chega nada, e aparece mensagem envada no status. Vlw pela força... Compartilhar este post Link para o post Compartilhar em outros sites
Thiago de Oliveira Cruz 21 Denunciar post Postado Novembro 8, 2008 só corrige um erro basico =P Troca o msg do flash por mensagem E troca no php por mensagem tbm Que ai deve passa a funcionar Erro meu mal ai x) Baixe o formulário aqui Design dele é horrivel :P Mas funciona hihihi Prova que ele funciona? Subject: formulário de contato Sender: meu e-mail add Recipient: meu e-mail add Date: Today 07:38 To protect your privacy, remote images are blocked in this message. Display images nome: 123 E-mail: 123 Mensagem: 132 Compartilhar este post Link para o post Compartilhar em outros sites
Freelife 2 Denunciar post Postado Novembro 10, 2008 Vlw novamente cara... mas então... o email chegou... só que chegou sem conteúdo, os campos estão vazios... rsrsrs e agora josé??? rsrsrs ah e detalhe... eu usei o seu form para teste tbém só pra ver se eu havia errado alguma coisa, mas tbém chega sem conteúdo.. mensagem: nome: E-mail: Mensagem: No virus found in this incoming message. Checked by AVG - http://www.avg.com Version: 8.0.175 / Virus Abraços Compartilhar este post Link para o post Compartilhar em outros sites
Thiago de Oliveira Cruz 21 Denunciar post Postado Novembro 10, 2008 Você está enviando esse formulário de um website?? ou está fazendo teste de serviço interno? Funciona perfeitamente em meu host esse formulário ai... sem tira nem por... Fiz umas 30 vezes o teste e todas passaram... Então não faço idéia do que você possa estar fazendo errado... Não quer publicar seu fla em um rapidshare, 4share da vida... para que eu teste? Vlw Abraçso Compartilhar este post Link para o post Compartilhar em outros sites
P3rukao 0 Denunciar post Postado Novembro 10, 2008 berseck, eu vi esse seu exemplo aqui, e tantos outros espalhados por aí net afora, mas não estou conseguindo aplicar no meu exemplo... Não exatamente um email que eu estou querendo mandar, na verdade, eu quero gerar um arquivo (xml, txt) com os dados passados pelo flash para um php.... porém aqui não está funcionando essa parte da exibição dos dados vindos do flash!!! Aqui é o meu php que está sendo chamado pelo flash <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>mail</title> </head> <body> <?php $msg = "nome: $_POST[name] \n\n E-mail: $_POST[email] \n\nMensagem: $_POST[mensagem]"; $conteudo = $msg; // Fechamos a tag guest $filename = "coisa.txt"; // verifica se o arquivo existe e pode ser alterado if (!$handle = fopen($filename, 'w')) { echo "Não foi possível abrir o arquivo ($filename)"; exit; } // Escreve $conteudo no arquivo aberto. if (fwrite($handle, $conteudo) === FALSE) { echo "Não foi possível escrever no arquivo ($filename)"; exit; } echo "Sucesso: Escrito ($conteudo) no arquivo ($filename)"; fclose($handle); ?> </body> </html> E esse aqui eh o código q está no 2º Frame do arquivo .FLA loadVariablesNum("mail.php", 0, "GET"); stop(); intervalo = function() { prevFrame(); clearInterval (tempo); } tempo = setInterval (intervalo, 1800); ::: Eu tentei fazer assim tbm, mas naum deu certo ::: var login_lv = new LoadVars(); login_lv.nome = nome.text; login_lv.assunto = assunto.text; login_lv.sendAndLoad("mail.php",login_lv,"POST"); login_lv.onLoad = function() { if(this.ok) { //aqui você coloca o q acontece qdo o login e senha estiverem corretos trace("login e senha corretos"); } else { //aqui você coloca o q acontece qdo o login e/ou senha não estiverem corretos trace("login e/ou senha errados"); } } Tu pode me dar uma ajuda nisso??? Compartilhar este post Link para o post Compartilhar em outros sites
Thiago de Oliveira Cruz 21 Denunciar post Postado Novembro 10, 2008 Só gostaria de lembrar que a variavel GET tem limite máximo de caracteres... o ideal seria utilizar o POST.... Eu usei GET no meu exemplo pq são poucas coisas afinal um formulariozinho de contato a galera não precisa escrever um livro :) Mas eu não entendi qual o seu problema... O seu flash está enviando os dados e o php não está recebendo??? é isso? Abraços Compartilhar este post Link para o post Compartilhar em outros sites
P3rukao 0 Denunciar post Postado Novembro 10, 2008 Na verdade, o meu php estava criando um arquivo, mas não estava colocando o conteúdo, que seria os valores passados pelo flash.... Mas eu dei mais uma olhada e percebi onde estava o erro.... loadVariablesNum("mail.php", 0, "GET"); Não tem como eu pegar os valores no php se o flash estava mandando como GET.. [Dâhrrr] MAs usando o loadVars(), tbm funciona??? var login_lv = new LoadVars(); login_lv.nome = nome.text; login_lv.assunto = assunto.text; login_lv.sendAndLoad("mail.php",login_lv,"POST"); Compartilhar este post Link para o post Compartilhar em outros sites
Thiago de Oliveira Cruz 21 Denunciar post Postado Novembro 10, 2008 Bom a principio sim :) eis um exemplo que eu postei a um tempo atrás de outro programador var L:LoadVars = new LoadVars();//Cria um objeto responsável por enviar e receber as variáveis L.valor = "bla bla bla";//Valor a ser enviado L.sendAndLoad("http://localhost/endereco_do_php.php", L, "POST");//Endereço do arquivo php com a função - Para testes no ambiente de criação, use endereço completo, como no exemplo. Só que eu normalmente coloco essa função relacionada a um botão :) :D E eu já usei isso ai anteriormente e funcionava que era uma magavilha :) Abraços Compartilhar este post Link para o post Compartilhar em outros sites
P3rukao 0 Denunciar post Postado Novembro 10, 2008 eh.... eu tentei aqui com o loadVars e funcionou direitinho... Mas nessas horas sempre bate uma dúvida horrivel: ::: DUVIDA ::: » Existe algum tipo de recomendação para o uso das duas formas... tipo.... eu já vi em muitos tutos e/ou posts a recomendação de se usar o loadVars(), mas nunca entendi o porque [exatamente] disso... ???? Compartilhar este post Link para o post Compartilhar em outros sites
Freelife 2 Denunciar post Postado Novembro 10, 2008 Então... sabe o que é estranho?! Eu estou usando o seu form que você deixou no link, alterei o email como no arquivo php como estava a instrução e coloquei ele no meu site de teste, mas mesmo assim a mensagem chega, mas, sem conteúdo como mencionei acima. Muito estranho... sobre publicar, agora não posso pois não estou com os arquivos, mas assim que puder eu dou um jeito de publicar. Abraços Compartilhar este post Link para o post Compartilhar em outros sites
Thiago de Oliveira Cruz 21 Denunciar post Postado Novembro 10, 2008 Uai..... Agora você me pegou..... O arquivo SWF está na mesma PASTA que o PHP?? Pois não tem motivo algum para não funcionar O_O que estranho...... Quanto a duvida do P3rukao Cara assim, não existe um método que seja certo ou errado... o que cabe a pessoa é fazer o que ela acha que vai dar menos trabalho para ela e que tenha o código mais limpo...... Por exemplo... Quando se está construindo jogos em flash (coisa que eu custumo fazer) quanto mais limpo e simples for o código mais fácil vai ser o seu trabalho em detectar onde está o erro caso haja algum erro... se eu fica usando var L:LoadVars = new LoadVars(); L.valor = "bla bla bla"; L.sendAndLoad("mail.php", L, "POST"); Eu vou gastar 3 linhas Se eu já declarei todas as variáveis antes... ou fiz um cara trabalhar para encontrar as variáveis ou digitar as variáveis Ai fica mais simples eu gasta uma linha só usando o loadVariablesNum("mail.php", 0, "POST"); pois já tive todo trabalho anterior... e não tive de criar uma variável para ficar enviando outras....... Então é tudo questão de quem faz... método que prefere etc... E lembrando que quanto menos código mais leve fica o arquivo...... e mais rápido ele roda.... Pq as vezes milisegundos podem fazer uma diferença danada... mas em outros casos nenhuma ;) Então é tudo uma questão do método que você prefere e decora melhor ^^ Exemplo disso é que eu estou tendo dificuldades em me entender com o AS3... uma vez que acho que tem muito mais lógica os comandos de AS2... Apesar que o AS3 seja mais completo :D Abraços Compartilhar este post Link para o post Compartilhar em outros sites
Freelife 2 Denunciar post Postado Novembro 10, 2008 caraca meu... to vendo que estou falando com especialistas...rsrsrs eu vou primeiro tentar fazer o form funcionar depois vou tentar implementar o que o P3rukao ta fazendo só que mudando um pouco... sobre o form: então... os arquivos estão na mesma pasta, pois, se não fosse assim o email nem chegaria pra mim certo?! a única coisa é que só chega isso: nome: E-mail: Mensagem: e mais nada... Agora outra dúvida: Esse form que estou fazendo será para o seguinte uso. No site terá um conteúdo, se a pessoa ficar com dúvidas então usará o form para enviar sua dúvida. Idéia: tem como quando a pessoa enviar sua dúvida eu queria que a dúvida aparecesse na pág, tipo um blog, alguma coisa assim... aparecendo a dúvida e depois a resposta que colocarei embaixo. Tem como fazer isso? Abraços Compartilhar este post Link para o post Compartilhar em outros sites
P3rukao 0 Denunciar post Postado Novembro 10, 2008 berseck, Eu entendi o que você que você quiz me dizer..... obrigado.... agora está mais claro....... só fico com receio de acabar usando métodos "antigos" para fazer minhas aplicações.... mas com a chegada do AS3, isso deve ficar pra trás rapidim... http://forum.imasters.com.br/public/style_emoticons/default/grin.gif Vlw pela ajuda... http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites
Thiago de Oliveira Cruz 21 Denunciar post Postado Novembro 10, 2008 Freelife O problema pode estar no GET como eu usei...... Ai se você trocar por POST talvez resolva o problema :) Mas tem que ver direito... Quando você puder, da uma olhadinha testa de novo e ai posta aqui vlw? Abraços Compartilhar este post Link para o post Compartilhar em outros sites
Freelife 2 Denunciar post Postado Novembro 10, 2008 Tá certo então berseck vou ver em casa pois, não lembro qual foi o método usado no seu fla. Sobre a outra dúvida sabe se tem como fazer? Tipo ao mesmo tempo que o cara enviar a dúvida o sistem já postar a dúvida na pág, e depois quando for respondida a questão a resposta ficar embaixo. Só pra saber se tem como pois daí vou pesquisar como fazer... Abraços http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites
Thiago de Oliveira Cruz 21 Denunciar post Postado Novembro 10, 2008 olha... Ter tem... Se tu manjar bem de php fica fácil Pois ai você manda a variável msg, para outra página de php que vai ser onde vai fica postada a pergunta... e ai tu teria de responder para o e-mail da pessoa e colocar a resposta em baixo da onde chama essa variável -.- Tipo se vai ter que criar algo do tipo, Pergunta resposta... vai ter de criar uma página na qual leia a pergunta que o cara fez através da leitura da variável msg, e você vai ter de criar um administrador que possibilite que você envie em baixo da resposta da variável msg uma outra como se fosse resposta... Tipo vai ter de criar um arquivo que tenha <table width=100%> <tr> <td> <? echo "$msg"; ?> </td> </tr> <tr> <td> <? echo "$resposta"; ?> </td> </tr> </table> Fazendo isso ai você vai fazer com que as respostas fiquem em tabelas diferente e tals... Eu estou dando só um exemplo, não sei como você quer fazer nem layout nem nada. Ai você teria de criar um administrador que seria igual a um form de e-mail com caixas de texto que enviaria a variável $resposta para o php que você criou onde seria postada a pergunta e a resposta... Bom a principio é isso ai Como você vai fazer??? para criar isso tudo :P ai já não é comigo hahaha Abraços PS: Eu apenas engatinho no php... sei bem pouco... sei fazer formulários buscas e tals... mas blog... etc... administrativo não é comigo hehehe melhor perguntar para o povo do php Compartilhar este post Link para o post Compartilhar em outros sites