如何在PHP Mailer中更改电子邮件发件人电子邮件

时间:2018-11-15 08:24:02

标签: php smtp phpmailer

   Currentlt it shows the mail on which phpmailer SMTP is registered.

    $email='abc@email.com';
    $subjectRsc="Any";
    $message='Welcome';
    phpmail($email, $subjectRsc, $message);

My phpmailer function: 

 $mail = new PHPMailer;
    $mail->isSMTP();
    $mail->SMTPDebug = 0;
    $mail->SMTPAuth = true;
    $mail->Debugoutput = 'html';
    $mail->Host = 'smptp';
    $mail->Port = 465; // or 587
    $mail->SMTPSecure = 'ssl'; // secure transfer enabled REQUIRED for Gmail
    $mail->SMTPAuth = true;
    $mail->Username = PHP_MAILER_EMAIL;
    $mail->Password = PHP_MAILER_PASSWORD;
    $mail->AddReplyTo(REPLY_EMAIL, 'ABC');
    $mail->SetFrom(FROM_EMAIL, 'ABC');
    $mail->Subject = $subject;
    $address = $to;
    $mail->AddAddress($address);
    $mail->MsgHTML($message);
    //send the message, check for errors
    if (!$mail->send()) {
        echo "Mailer Error: " . $mail->ErrorInfo;
    } else {
        return true;
    }

这是我向用户发送邮件的方式,我想显示要显示在网站的特定邮件中而不是在smtp服务器注册的邮件中显示的网站。

3 个答案:

答案 0 :(得分:0)

您应该尝试:

   $mail = new PHPMailer;
$mail->isSMTP();
$mail->SMTPDebug = 0;
$mail->SMTPAuth = true;
$mail->Debugoutput = 'html';
$mail->Host = 'smptp';
$mail->Port = 465; // or 587
$mail->SMTPSecure = 'ssl'; // secure transfer enabled REQUIRED for Gmail
$mail->SMTPAuth = true;
$mail->Username = PHP_MAILER_EMAIL;
$mail->Password = PHP_MAILER_PASSWORD;
$mail->addReplyTo('myemail@example.com', 'ABC'); //<-- this is the line i changed
$mail->From= "myemail@example.com";  //<-- this is the line i changed
$mail->Subject = $subject;
$address = $to;
$mail->AddAddress($address);
$mail->MsgHTML($message);
//send the message, check for errors
if (!$mail->send()) {
    echo "Mailer Error: " . $mail->ErrorInfo;
} else {
    return true;
}

根据phpmailer文档,这是添加发件人电子邮件的字段。

答案 1 :(得分:0)

please try using this code  :

<?php

require_once "vendor/autoload.php";

//PHPMailer Object
$mail = new PHPMailer;

//From email address and name
$mail->From = "from@yourdomain.com";
$mail->FromName = "Full Name";

//To address and name
$mail->addAddress("test@gmail.com", "Test");
$mail->addAddress("test1@gmail.com"); 

//Address to which recipient will reply

//if you want to add CC and BCC
$mail->addCC("cc@example.com");
$mail->addBCC("bcc@example.com");

//Send HTML or Plain Text email
$mail->isHTML(true);

$mail->Subject = "Subject Text";
$mail->Body = "<i>Mail body in HTML</i>";
if(!$mail->send()) 
{
    echo "Mailer Error: " . $mail->ErrorInfo;
} 
else 
{
    echo "Message has been sent successfully";
}

?>

答案 2 :(得分:0)

请尝试使用以下代码:

<?php

$to = "test@gmail.com";
     $subject = "This is subject";

     $message = "<b>This is HTML message.</b>";
     $message .= "<h1>This is headline.</h1>";

     $header = "From:test1@gmail.com \r\n";
   $header .= "Cc:test2@gmail \r\n";
     $header .= "MIME-Version: 1.0\r\n";
     $header .= "Content-type: text/html\r\n";

     $retval = mail ($to,$subject,$message,$header);

     if( $retval == true ) {
        echo "Message sent successfully...";
     }else {
        echo "Message could not be sent...";
     }

?>