Jump to content

Fábio Corrêa

Members
  • Content count

    1
  • Joined

  • Last visited

Everything posted by Fábio Corrêa

  1. Fábio Corrêa

    Problemas com classe phpmailer

    Olá pessoal, boa tarde! Estou enfrentando um problema com meu formulário de e-mail que não consigo resolver de forma alguma, já revirei a net e nada. Seguinte, esse formulário que estou tendo problemas estava funcionando perfeitamente até ano passado (2017), e do nada ele para de funcionar. Já tentei de tudo, já atualizei a classe, já utilizei outros formulários prontos e todos estão dando o mesmo erro, tanto localmente (wamp), quanto no servidor de hospedagem. O erro que apresenta é referente ao servidor smtp, parece que ele não está conseguindo fazer autenticação. Vou postar meu código todo e explicar de forma mais detalhada. <?php $nome = utf8_decode (strip_tags(trim($_POST['nomeremetente']))); $email = utf8_decode (strip_tags(trim($_POST['emailremetente']))); $ddd = utf8_decode (strip_tags(trim($_POST['ddd']))); $telefone = utf8_decode (strip_tags(trim($_POST['telefone']))); $assunto = utf8_decode (strip_tags(trim($_POST['assunto']))); $mensagem = utf8_decode (strip_tags(trim($_POST['mensagem']))); require_once('PHPMailer/class.phpmailer.php'); $Email = new PHPMailer(); $Email->SetLanguage("br"); $Email->IsSMTP(); // Habilita o SMTP $Email->SMTPAuth = true; //Ativa e-mail autenticado $Email->Host = 'ssl://smtp.gmail.com'; // Servidor de envio # verificar qual o host correto com a hospedagem as vezes fica como smtp. $mail->SMTPSecure = 'ssl'; // SSL REQUERIDO pelo GMail $Email->Port = '465'; // Porta de envio $Email->Username = 'emaildogmail@gmail.com'; //e-mail que será autenticado $Email->Password = 'minha senha'; // senha do email // ativa o envio de e-mails em HTML, se false, desativa. $Email->IsHTML(true); // email do remetente da mensagem $Email->From = 'emaildoremetente@email.com'; // nome do remetente do email $Email->FromName = utf8_decode($email); // Endereço de destino do emaail, ou seja, pra onde você quer que a mensagem do formulário vá? $Email->AddReplyTo($email, $nome); $Email->AddAddress("emaildestinatario@email.com"); // para quem será enviada a mensagem // informando no email, o assunto da mensagem $Email->Subject = "(Contato do site )"; // Define o texto da mensagem (aceita HTML) $Email->Body .= "<br /><br /> <strong>Nome:</strong> $nome<br /><br /> <strong>E-mail:</strong> $email<br /><br /> <strong>Telefone:</strong> $ddd - $telefone<br /><br /> <strong>Assunto:</strong> $assunto<br /><br /> <strong>Mensagem:</strong><br /> $mensagem"; // verifica se está tudo ok com oa parametros acima, se nao, avisa do erro. Se sim, envia. if(!$Email->Send()){ echo "<script>alert('Ocorreu um erro, tente novamente!');window.history.go(-1)</script>"; echo "Erro: " . $Email->ErrorInfo; }else{ echo "<script>alert('Sua mensagem foi enviada com sucesso!');window.history.go(-1)</script>"; } ?> <div class="div-form"> <h1>Formulário de Contato</h1> <form action="envia.php" method="post"> <fieldset> <p><label for="nome">Nome:</label></p> <input type="text" name="nomeremetente" size="30" class="width233" required="yes"> <p><label for="email">E-mail:</label></p> <input type="text" name="emailremetente" size="30" class="width233" required="yes" pattern="[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,4}$" / > <p><label for="email">Telefone:</label></p> <input type="text" name="ddd" size="10" class="width10" pattern="[0-9]+$" /> <input type="text" name="telefone" size="30" class="tel" pattern="[0-9]+$" /> <p><label for="assunto">Assunto:</label></p> <input type="text" name="assunto" size="30" required="yes" class="width233"/> <p><label for="texto">Mensagem:</label></p> <textarea name="mensagem" rows="10" class="width233" required="yes"></textarea> <input type="submit" name="enviar" value="Enviar" class="enviar" /> </fieldset> </form> </div> Localmente, com wamp exibe esse erro aqui: A linha 17 do arquivo envia.php é essa aqui: $mail->SMTPSecure = 'ssl'; // SSL REQUERIDO pelo GMail E no servidor online ele só exibe a mensagem de erro: Erro de SMTP: Não foi possivel conectar com o servidor SMTP. o que eu já fiz: Alterei a porta para 587. Retirei o SSL:// do > $Email->Host = 'ssl://smtp.gmail.com'; Já procurei formulários prontos, porém todos exibem o mesmo erro de SMTP. Já tentei com outra conta do gmail. E lembrando que sempre esteve ativado a opção de DISPOSITIVOS MENOS SEGUROS, no google para que ele não bloqueie o envio. O que eu achei estranho foi que, ontem tentando consertar esse erro, por acaso acessei o email do gmail que estou utilizando e recebi um alerta. Só não entendi porque o gmail está bloqueando, sendo que eu já ativei o acesso a aplicativos menos seguros. Estranho que quando eu alterei para uma outra conta do gmail para fazer um teste eu nem se quer recebi essas notificações do gmail. Será existe alguma configuração além dessa que possa estar bloqueando???? Creio que meu código esteja funcionando perfeitamente, pois como disse ele estava funcionando e do nada parou. Alguém já passou por isso? Podem me ajudar? Desde já eu agradeço aos amigos que disponibilizarão de seu tempo para tentar me ajudar. Abraço.
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.