Jipa 0 Denunciar post Postado Maio 26, 2009 Alguém pode me ajudar?, está dando um erro Mailer Error: The following From address failed: já verifiquei o endereço de e-mail e esta correto. Não sei o que pode ser... <?php //Inclue a Classe PHPMailer ao código require_once("phpmailer/class.phpmailer.php"); //Pega os dados enviados pelo formulário $fromname = $_POST["seunome"]; $fromemail = $_POST["seuemail"]; $toname = $_POST["toname"]; $toemail = $_POST["toemail"]; $assunto = $_POST["assunto"]; $mensagem = $_POST["mensagem"]; $mail = new PHPMailer(); $mail->SetLanguage("phpmailer/language/phpmailer.lang-br.php"); //define que a forma de envio será SMTP $mail->IsSMTP(); //habilita a autenticação, necessária para usar o Yahoo $mail->SMTPAuth = true; //Define o endereço de SMTP, no nosso caso o do Yahool $mail->Host = "smtp.mail.yahoo.com.br"; //Define a porta usada pelo Yahoo $mail->Port = 25; //Usuário e senha Yahoo $mail->Username = "exemplo@yahoo.com.br"; $mail->Password = "xxx"; //Remetente $mail->From = $fromemail; $mail->FromName = $fromname; //Assunto $mail->Subject = $assunto; //Corpo da mensagem $mail->Body = $mensagem; $mail->AltBody = $mensagem; //Destinatário $mail->AddAddress("exemplo@yahoo.com.br"); //Mensagem de erro ou de sucesso no envio if(!$mail->Send()) { echo "Mailer Error: " . $mail->ErrorInfo; } else { echo "Email enviado com sucesso!"; } ?> No arquivo php.ini modifiquei as seguinte linhas [mail function] ; For Win32 only. SMTP = smtp.mail.yahoo.com.br smtp_port = 25 ; For Win32 only. sendmail_from = exemplo@yahoo.com.br Compartilhar este post Link para o post Compartilhar em outros sites
Will Fernando 2 Denunciar post Postado Maio 26, 2009 teu servidor nao usa criptografia ? de uma olhada nesse topico: http://forum.imasters.com.br/index.php...amp;pid=1250515 *se nao me engano o perukao posto um script do mailer no yahoo cata por ali ^^ valww espero ter ajudado Compartilhar este post Link para o post Compartilhar em outros sites
Jipa 0 Denunciar post Postado Maio 26, 2009 Eu estou realmente desacreditando que esta classe funcione, pois o tanto que já pesquisei e tudo que vi foi um monte de gente com erros e nenhum postou que conseguiu arrumar o erro e que funcionou... Compartilhar este post Link para o post Compartilhar em outros sites
espiculo 1 Denunciar post Postado Maio 26, 2009 Logico que não ira funciona ... você não pode ussa o smtp do yahoo ..... para mandar o email ... antigamente podia agora eles colocarão firewall e não aceita a autenticação pelo fato que estava carregando muito o servidor e pela segurança ... e pelo fato que os usuários poderia manda e-mail zumbi para todos os usuários com seu email ... penso o caus que seria ???? smtp.mail.yahoo.com.br teste ussa seu próprio smtp ... Compartilhar este post Link para o post Compartilhar em outros sites
Will Fernando 2 Denunciar post Postado Maio 27, 2009 Eu estou realmente desacreditando que esta classe funcione, pois o tanto que já pesquisei e tudo que vi foi um monte de gente com erros e nenhum postou que conseguiu arrumar o erro e que funcionou... deu uma olhada nesse topico que te flwei ? de uma olhada nesse topico: http://forum.imasters.com.br/index.php...amp;pid=1250515 *se nao me engano o perukao posto um script do mailer no yahoo cata por ali ^^ neste topico tem pelomenos 4 exemplos funcionando um por min ( Gmail ) , um pelo perukao ( yahoo ) e dois por hinom ( otro servidor e Gmail) .. Compartilhar este post Link para o post Compartilhar em outros sites
Jipa 0 Denunciar post Postado Maio 27, 2009 Logico que não ira funciona ... você não pode ussa o smtp do yahoo ..... para mandar o email ... antigamente podia agora eles colocarão firewall e não aceita a autenticação pelo fato que estava carregando muito o servidor e pela segurança ... e pelo fato que os usuários poderia manda e-mail zumbi para todos os usuários com seu email ... penso o caus que seria ???? smtp.mail.yahoo.com.br teste ussa seu próprio smtp ... hehe...Já consegui funcionou nada a ver o que você falou... consegui com o yahoo e gmail. Compartilhar este post Link para o post Compartilhar em outros sites
Jipa 0 Denunciar post Postado Maio 27, 2009 Eu estou realmente desacreditando que esta classe funcione, pois o tanto que já pesquisei e tudo que vi foi um monte de gente com erros e nenhum postou que conseguiu arrumar o erro e que funcionou... deu uma olhada nesse topico que te flwei ? de uma olhada nesse topico: http://forum.imasters.com.br/index.php...amp;pid=1250515 *se nao me engano o perukao posto um script do mailer no yahoo cata por ali ^^ neste topico tem pelomenos 4 exemplos funcionando um por min ( Gmail ) , um pelo perukao ( yahoo ) e dois por hinom ( otro servidor e Gmail) .. Oi Will valeu pela atenção eu já consegui fazer o script funcionar mais tem outra coisinha que quero mudar e quero sua opinião pra ver se resolvemos esse erro. Compartilhar este post Link para o post Compartilhar em outros sites
Jipa 0 Denunciar post Postado Maio 27, 2009 ESSE FUNCIONOU NORMAL. <?php include("class.phpmailer.php"); $assunto = $_POST["assunto"]; $mensagem = $_POST["mensagem"]; $mail = new PHPMailer(); $mail->IsSMTP(); $mail->SMTPAuth = true; $mail->Host = "smtp.pva.terra.com.br"; $mail->Port = 25; $mail->Username = "exemplo@terra.com.br"; $mail->Password = "xxx"; $mail->From = "exemplo@terra.com.br"; $mail->FromName = "exemplo"; $mail->Subject = $assunto; $mail->Body = $mensagem; $mail->AltBody = $mensagem; //Destinatário, ou seja, quem vai receber a mensagem $mail-> addaddress("pessoa@gmail.com", "pessoa"); //Mensagem de erro ou de sucesso no envio if(!$mail->Send()) { echo "Mailer Error: " . $mail->ErrorInfo; } else { echo "Email enviado com sucesso!"; } ?> Agora esse segundo script estou tentando passar o e-mail do cliente para o FROM mais ta surgindo um erro na hora de enviar os dados. Tenho um formulario.html NOME: João E-MAIL: joao@gmail.com MENSAGEM: xxxx <?PHP include("class.phpmailer.php"); $nome = utf8_decode($_POST['nome']); $emailusuario = utf8_decode($_POST['emailusuario']); $assunto = utf8_decode($_POST['assunto']); $mensagem = utf8_decode($_POST['mensagem']); $Email = new PHPMailer(); $Email->IsMail(); $Email->IsHTML(true); $Email->IsSMTP(); $Email->SMTPAuth = true; $Email->Host = "smtp.pva.terra.com.br"; $Email->Port = 25; $Email->Username = "exemplo@terra.com.br"; $Email->Password = "xxx"; $Email->FromName = $nome; $Email->From = $emailusuario; $Email->Subject = "Fale Conosco"; $body = $mensagem; $Email->MsgHTML($body); $Email->AltBody = $body; $Email->WordWrap = 50; $Email->AddAddress("pessoa@gmail.com", "pessoa"); if(!$Email->Send()) { echo "A mensagem não foi enviada."; echo "Mensagem de erro: " . $Email->ErrorInfo; } else { echo "Mensagem enviada!"; } ?> Informa o seguinte erro, Mensagem de erro: Language string failed to load: from_failedjoao@gmail.com o que seria este erro?, pode até ser um erro bobo, mais não entendo muito php não, estou começando a praticar. Compartilhar este post Link para o post Compartilhar em outros sites
Will Fernando 2 Denunciar post Postado Maio 27, 2009 tenta usa $mail->IsHTML(true); $mail->Body = $body; // preferencial com HTML $mail->AltBody = $otrobody; // alternativo sem HTML valww Compartilhar este post Link para o post Compartilhar em outros sites
Jipa 0 Denunciar post Postado Maio 27, 2009 tenta usa $mail->IsHTML(true); $mail->Body = $body; // preferencial com HTML $mail->AltBody = $otrobody; // alternativo sem HTML valww Oi Will, mais já tem essa parte de codigo no script acima. Compartilhar este post Link para o post Compartilhar em outros sites
Will Fernando 2 Denunciar post Postado Maio 27, 2009 tenta usa $mail->IsHTML(true); $mail->Body = $body; // preferencial com HTML $mail->AltBody = $otrobody; // alternativo sem HTML valww Oi Will, mais já tem essa parte de codigo no script acima. no primeiro que voce dise que funcionou note que esta ultilizando para definir o corpo $mail->Body = $body; ja no outro que voce diz que nao esta voce define por $Email->MsgHTML($body); tambem tem este $Email->IsMail(); que ha somente no segundo que nao esta funcionando ESSE FUNCIONOU NORMAL. CODE <?php include("class.phpmailer.php"); $assunto = $_POST["assunto"]; $mensagem = $_POST["mensagem"]; $mail = new PHPMailer(); $mail->IsSMTP(); $mail->SMTPAuth = true; $mail->Host = "smtp.pva.terra.com.br"; $mail->Port = 25; $mail->Username = "exemplo@terra.com.br"; $mail->Password = "xxx"; $mail->From = "exemplo@terra.com.br"; $mail->FromName = "exemplo"; $mail->Subject = $assunto; $mail->Body = $mensagem; $mail->AltBody = $mensagem; //Destinatário, ou seja, quem vai receber a mensagem $mail-> addaddress("pessoa@gmail.com", "pessoa"); //Mensagem de erro ou de sucesso no envio if(!$mail->Send()) { echo "Mailer Error: " . $mail->ErrorInfo; } else { echo "Email enviado com sucesso!"; } ?> Agora esse segundo script estou tentando passar o e-mail do cliente para o FROM mais ta surgindo um erro na hora de enviar os dados. Tenho um formulario.html NOME: João E-MAIL: joao@gmail.com MENSAGEM: xxxx CODE <?PHP include("class.phpmailer.php"); $nome = utf8_decode($_POST['nome']); $emailusuario = utf8_decode($_POST['emailusuario']); $assunto = utf8_decode($_POST['assunto']); $mensagem = utf8_decode($_POST['mensagem']); $Email = new PHPMailer(); $Email->IsMail(); $Email->IsHTML(true); $Email->IsSMTP(); $Email->SMTPAuth = true; $Email->Host = "smtp.pva.terra.com.br"; $Email->Port = 25; $Email->Username = "exemplo@terra.com.br"; $Email->Password = "xxx"; $Email->FromName = $nome; $Email->From = $emailusuario; $Email->Subject = "Fale Conosco"; $body = $mensagem; $Email->MsgHTML($body); $Email->AltBody = $body; $Email->WordWrap = 50; $Email->AddAddress("pessoa@gmail.com", "pessoa"); if(!$Email->Send()) { echo "A mensagem não foi enviada."; echo "Mensagem de erro: " . $Email->ErrorInfo; } else { echo "Mensagem enviada!"; } ?> Informa o seguinte erro, Mensagem de erro: Language string failed to load: from_failedjoao@gmail.com o que seria este erro?, pode até ser um erro bobo, mais não entendo muito php não, estou começando a praticar. Compartilhar este post Link para o post Compartilhar em outros sites
Jipa 0 Denunciar post Postado Maio 27, 2009 Will, fiz o que você sugeriu e nada, acontece o mesmo erro, pelo que pude perceber só funciona se colocar dessa forma $Email->From = "exemplo@terra.com.br"; ou seja adicionando diretamente mais dessa forma não é interessante. Outra coisa que verifiquei é que o From não aceita outro endereço de e-mail que não seja o meu mesmo que estou atenticando no smtp e no username. Já testei outros endereços de e-mail e não aceita, surge o mesmo erro. O correto é o cliente entrar com seu e-mail e o From pegar através da variavel. Mas pelo que pude verificar isso não tem como. Se você puder tenta testar pra ver como não funciona. Compartilhar este post Link para o post Compartilhar em outros sites
Will Fernando 2 Denunciar post Postado Maio 27, 2009 envia para outros email sim .. so que no caso nao é neste from que coloca o email do destinatario.. eh no $mail->AddAddress("exemplo@yahoo.com.br"); mass man.. sei la entao.. da uma ultima verificada no nome das variaveis e caminhos .. por exemplo : as veses tah escrito $email no lugar de $mail e agente nem nota ^^ vamos esperar mais opinioes ^^ Compartilhar este post Link para o post Compartilhar em outros sites
Jipa 0 Denunciar post Postado Maio 27, 2009 envia para outros email sim .. so que no caso nao é neste from que coloca o email do destinatario.. eh no $mail->AddAddress("exemplo@yahoo.com.br"); mass man.. sei la entao.. da uma ultima verificada no nome das variaveis e caminhos .. por exemplo : as veses tah escrito $email no lugar de $mail e agente nem nota ^^ vamos esperar mais opinioes ^^ Não você não entendeu o que eu disse, o destinatário(AddAddress) eu sei que tem como mudar, eu to dizendo o From que é o remetente. O from que é o remetente não aceita outro rementente se não o proprio endereço de e-mail atenticado no smtp. se colocar outro endereço de e-mail no from da erro, mesmo colocando diretamente o endereço no From. Exemplo: $Email->IsSMTP(); $Email->SMTPAuth = true; $Email->Host = "smtp.pva.terra.com.br"; $Email->Port = 25; $Email->Username = "exemplo@terra.com.br"; $Email->Password = "xxx"; $Email->From = "exemplo@terra.com.br"; ---> TIPO SE EU COLOCAR AQUI "hack@gmail.com" NÃO FUNCIONA $Email->FromName = "xxx"; SÓ FUNCIONA SE FOR O MESMO ENDEREÇO DO SMTP e do username. $Email->From = $nome; $Email->FromName = $emailusuario; SE COLOCAR DESSA FORMA TAMBÉM NÃO DA CERTO. Compartilhar este post Link para o post Compartilhar em outros sites