Problem creating object in phpmailer: $email = new Phpmailer();

Asked

Viewed 58 times

0

I’m doing a project and I’m trying to use phpmailer to send an email from localhost.

if (isset($_POST['name']) && isset($_POST['email'])) {
        $name = $_POST['name'];
        $email = $_POST['email'];
        $subject = $_POST['subject'];
        $body = $_POST['body'];

        require "PHPMailer/PHPMailer.php";
        require "PHPMailer/SMTP.php";
        require "PHPMailer/Exception.php";

        $email = new PHPMailer();  <-- Aqui
  • which version of phpmailer?

2 answers

2

Hello,

As far as I can tell, you’re not in any trouble, just doubting how to!

Look at the examples in the documentation: Phpmailer/examples

SMTP example:

<?php
//Passing `true` enables PHPMailer exceptions
$mail = new PHPMailer();
   
$mail->isSMTP();
$mail->Host = 'smtp.example.com';
$mail->SMTPAuth = true;
$mail->Port = 25;
$mail->Username = '[email protected]';
$mail->Password = 'yourpassword';
$mail->setFrom('[email protected]', 'List manager');
$mail->addReplyTo('[email protected]', 'List manager');

$mail->Subject = 'PHPMailer Simple database mailing list test';

$mail->msgHTML($body);
$mail->AltBody = 'To view the message, please use an HTML compatible email viewer!';

$mail->addAddress($email, $name);
$mail->send(); // TRATE AQUI PARA VER SE ENVIOU MESMO

0

I think @Duda Gervasio is right, but I think you should be using version 6

<?php
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;

// Inclui os arquivo localizados na pasta src
require_once 'PHPMailer/Exception.php';
require_once 'PHPMailer/PHPMailer.php';
require_once 'PHPMailer/SMTP.php';

// Inicia a classe PHPMailer
$mail = new PHPMailer(true); 
$mail->setLanguage('br'); 

//Usado para define o remetente mais adiante
$vemail="[email protected]";
$vnome="Euzinho"; 

try {
    // Configurações do servidor
    $mail->SMTPDebug = 0; 
    $mail->isSMTP();                                      
    $mail->Host = 'mail.dominio.com';                 // Endereço do servidor SMTP
    $mail->SMTPAuth = true;                          // autenticação SMTP
    $mail->Username = '[email protected]';        // Usuário do servidor SMTP
    $mail->Password = '*********';                 // Senha da caixa postal utilizada
    $mail->SMTPSecure = 'tls';                    // Ativar criptografia TLS, `ssl` também é aceita
    $mail->Port = 587;                           // TCP port to connect to

    // Define o remetente   
    $mail->setFrom($vemail, $vnome);           // email e nome do remetente
    
    
    // Define o(s) destinatário(s)
    $mail->addAddress('[email protected]', 'Ciclano');
    
    // Destinatários abaixo são opcionais 
    //$mail->addAddress('[email protected]');                  // outro destinatario
    $mail->addReplyTo('[email protected]', 'Eu');                //aqui você coloca o endereço de quem está enviando a mensagem pela sua página
    //$mail->addCC('[email protected]');                           // Copia
    //$mail->addBCC('[email protected]');                        // Copia oculta

    //Anexos
    //$mail->addAttachment('/var/tmp/file.tar.gz');         // Adicionar um anexo
    //$mail->addAttachment('/tmp/image.jpg', 'new.jpg');   // Nome opcional

    //Content
    $mail->isHTML(true);                                 // true define que o e-mail será enviado como HTML, se false, desativa
    $mail->Subject = 'Digite a assunto aqui';           // Assunto da mensagem
    
    //Define o corpo do email
    $mail->Body    = 'Corpo da mensagem <b>em negrito negritito!</b>';

    $mail->send();
    echo 'Message has been sent';
//caso apresente algum erro é apresentado abaixo com essa exceção.
} catch (Exception $e) {
    echo 'Mensagem não pode ser enviada.';
    echo 'Mailer Error: ' . $mail->ErrorInfo;   //Mensagem de erro do PHPMailer
}
?>

Browser other questions tagged

You are not signed in. Login or sign up in order to post.