PHPMailer IsHTML(true)无法正常工作

我正在尝试从PHPMailer发送电子邮件.一切正常,但问题是即使编写了$mail-> IsHTML(true),它也将发送电子邮件以及HTML标签. .以下是我发送电子邮件的代码.

    $mail = new PHPMailer(); 
    $mail->IsSMTP();
    $mail->SMTPDebug = 1;
    $mail->SMTPAuth = true; 
    $mail->SMTPSecure = EMAIL_COMPOSE_SECURE; 
    $mail->Host = EMAIL_COMPOSE_SMTP_HOST;  
    $mail->Port = EMAIL_COMPOSE_PORT;
    $mail->Username = EMAIL_COMPOSE_OUTGOING_USERNAME;
    $mail->Password = EMAIL_COMPOSE_OUTGOING_PASSWORD;
    $mail->SetFrom(EMAIL_COMPOSE_INCOMING_USERNAME);
    $mail->Subject =$subject;

    $mail->Body = $message;
    $mail->IsHTML(true);
    $mail->AddAddress($email_to);
    if(!$mail->Send()){
        echo "Mailer Error: " . $mail->ErrorInfo;
    }
    else{
      echo "Message has been sent";
    }

在应用程序文本编辑器中,我还要提到的另一件事是ckeditor.这会引起任何问题吗?请帮忙.

解决方法:

如果调用IsHTML(true),为什么不期望它使用HTML?这就是您告诉PHPMailer将您的消息正文视为HTML的方式!如果您不希望HTML作为内容类型,请调用IsHTML(false)或根本不调用它,因为纯文本是默认值.

如果同时需要HTML和纯文本,请调用msgHTML($html),它还将为您处理HTML->文本转换.

正如Chris所说,在设置Body之前先调用IsHTML.

正如Dagon所说,如果将HTML放入$message中,它将发送HTML …

上一篇:【转载】Java学习笔记


下一篇:phpmailer-phpmail总是垃圾邮件