6
respostas

ERRO PHPMAIEL

Esta dando erro na classe do php mailer poderia verificar :

erro:

Fatal error: Class 'PHPMailer' not found in C:\xampp\htdocs\public_html\envia-contato.php on line 10

Meu codigo :

<?php
session_start();
$nome = $_POST["nome"];
$email = $_POST["email"];
$telefone = $_POST["telefone"];
$mensagem = $_POST["mensagem"];

require_once("PHPMailer.php");

$mail = new PHPMailer();
$mail->isSMTP();
$mail->Host = 'smtp.gmail.com';
$mail->Port = 587;
$mail->SMTPSecure = 'tls';
$mail->Username = "contatocoesmaemail@gmail.com";
$mail->Password = "****";

$mail->setFrom("victor@coesma.com.br","Contato COESMA");
$mail->AddAddress("contatocoesmaemail@gmail.com");
$mail->Subject = "Email de Contato COESMA";
$mail->msgHTML("<html>De: {$nome}<br/>Email: {$email}<br/>Mensagem: {$mensagem} </html>");
$mail->AltBody = "De: {$nome}\nEmail: {$email}\nMensagem: {$mensagem}";

if($mail->Send()) {
    $_SESSION["success"] = "Mensagem enviada com sucesso.";
    header("Location: index.php");
}else {
    $_SESSION["danger"] = "Erro ao enviar mensagem." . $mail->ErrorInfo;
    header("Location: contato.php");
}die();
?>
6 respostas

Victor, bom dia!

Verifique se a classe PHPMailer está salva no caminho indicado pelo erro. Caso não esteja, mova o arquivo para o caminho indicado

Espero ter ajudado! bons estudos :D

Sim, eu até criei uma pasta nova para ver se resolvia e coloquei os arquivos la porem continua o erro eu baixei o phpmailer e ele veio com o

OAUTH.php PHPmailer.php POP3.php E mais ourtros, estou passando referente ao PHPmailer. mas pelo jeito não deve ser

require_once("enviaemail/PHPMailer.php");

Já consegui consertar o erro e porque tinha baixado uma versão atualizada no Gtih do phpmailer. porem algora ta tudo certo só que qdo clico no botão de enviar ele sempre cai no else como erro sabe onde to errando no codigo?

<?php
session_start();
$nome = $_POST["nome"];
$email = $_POST["email"];
$telefone = $_POST["telefone"];
$mensagem = $_POST["mensagem"];

require_once("phpmailer/PHPMailerAutoload.php");

$mail = new PHPMailer();
$mail->isSMTP();
$mail->Host = 'smtp.gmail.com';
$mail->Port = 587;
$mail->SMTPSecure = 'tls';
$mail->Username = "contatocoesmaemail@gmail.com";
$mail->Password = "*****";

$mail->setFrom("victorcoesma@gmail.com","Contato COESMA");
$mail->AddAddress("victorcoesma@gmail.com");
$mail->Subject = "Email de Contato COESMA";
$mail->msgHTML("<html>De: {$nome}<br/>Email: {$email}<br/>Mensagem: {$mensagem} </html>");
$mail->AltBody = "De: {$nome}\nEmail: {$email}\nMensagem: {$mensagem}";

if($mail->Send()) {
    $_SESSION["success"] = "Mensagem enviada com sucesso.";
    header("Location: index.php");
}else {
    $_SESSION["danger"] = "Erro ao enviar mensagem." . $mail->ErrorInfo;
    header("Location: contato.php");
}die();
?>

Victor, bom dia!

No seu else ele indica uma mensagem de erro, poderia comentar ele aqui?

Não, quando eu clico no botão enviar ele ja cai no else ou seja nao deu certo, e eu qria saber se algum problema no codigo

Victor, boa noite!

Na linha

$_SESSION["danger"] = "Erro ao enviar mensagem." .$mail->ErrorInfo;

Você está salvando a mensagem de erro, tente fazer um

echo $_SESSION['danger'];

e comente a linha de

//header("Location: contato.php");

E comenta aqui a mensagem que está aparecendo no echo

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software