require_once('phpmailer/class.phpmailer.php');
$mail = new PHPMailer;
$mail->CharSet = 'utf-8';
//$mail->SMTPDebug = 3; // Enable verbose debug output
$mail->isSMTP(); // Set mailer to use SMTP
$mail->Host = 'smtp.mail.ru'; // Specify main and backup SMTP servers
$mail->SMTPAuth = true; // Enable SMTP authentication
$mail->Username = '123'; // Ваш логин от почты с которой будут отправляться письма
$mail->Password = '123'; // Ваш пароль от почты с которой будут отправляться письма
$mail->SMTPSecure = 'ssl'; // Enable TLS encryption, `ssl` also accepted
$mail->Port = 465; // TCP port to connect to / этот порт может отличаться у других провайдеров
$mail->setFrom('123@mail.ru'); // от кого будет уходить письмо?
$mail->addAddress('123@p33.org'); // Кому будет уходить письмо
//$mail->addAddress('123@example.com'); // Name is optional
//$mail->addReplyTo('123@example.com', 'Information');
//$mail->addCC('cc@example.com');
//$mail->addBCC('bcc@example.com');
//$mail->addAttachment('/var/tmp/file.tar.gz'); // Add attachments
//$mail->addAttachment('/tmp/image.jpg', 'new.jpg'); // Optional name
$mail->isHTML(true); // Set email format to HTML
$mail->Subject = 'Заявка с тестового сайта';
$mail->Body = '' .$name . ' оставил заявку, его телефон ' .$phone. '<br>Почта этого пользователя: ' .$email;
$mail->AltBody = '';
if(!$mail->send()) {
echo 'Error';
} else {
header('location: thank.html');
}
?>
问题是当我输入 require_once(class.phpmailer.php) 时,我无法加载页面。谁能说出它与什么有关?
首先,添加到文件的开头
很可能它是 phpmailer 的错误路径。
例如,在我的代码中,我使用的是直接连接的 phpmailer,不是通过 class.phpmailer.php,而是从 gitHub 下载的发行版。
它看起来像这样:
很有可能您已经在没有 require_once 的情况下连接了它,例如,wordpress 将 phpmailer 与其脚本连接起来。
尝试启用
//$mail->SMTPDebug = 3;
并执行脚本。带有错误的服务器日志在调试此类问题时特别有用。在哪里可以找到它们取决于托管/服务器/本地机器设置。