我正在尝试发送一封包含PHPMailer的电子邮件,但到目前为止它对我不起作用。
在我的FTP上,我放了2个文件,class.phpmailer.php
和sendEMail.php
(这个文件由我创建),内容如下:
<?php
require_once('/var/www/vhosts/MYWEBPAGE/httpdocs/class.phpmailer.php');
$mail = new PHPMailer();
$mail->isSMTP();
$mail->SMTPAuth = true;
$mail->Host = "mail.dom.com";
$mail->Username = "smpt@mail.com";
$mail->Password = "passwd";
$mail->Port = 25;
$mail->setFrom("my@mail.com", "me", 0);
$mail->addAddress("to@mail.com");
$mail->Subject = "test";
$body = "Hello World!";
$mail->Body = $body;
if(!$mail->send()) {
echo ("Invoice could not be send. Mailer Error: " . $mail->ErrorInfo);
} else {
echo "Invoice sent!";
}
?>
我错过了什么?当我执行这个文件时,它没有显示任何内容,我的意思是在if之前(!$ mail-&gt; send()){...它向我显示每个回显,但是在那行之后,它没有显示任何内容。
答案 0 :(得分:0)
这是因为您没有阅读the readme,告诉您需要哪些文件,也不会根据提供的示例创建代码。您尚未加载SMTP类,也没有加载自动加载器,因此只要您尝试发送,它就无法找到SMTP类。这将记录在您的Web服务器日志中,就像任何其他PHP致命错误一样。
而不是:
require_once('/var/www/vhosts/MYWEBPAGE/httpdocs/class.phpmailer.php');
这样做:
require '/var/www/vhosts/MYWEBPAGE/httpdocs/PHPMailerAutoload.php';