Добрый вечер!
Делаю отправку заявок с сайта через SMTP (PHPMailer), но в логах выдаётся такая ошибка:
PHP Fatal error: Uncaught Error: Call to a member function isSMTP() on string in /public_html/form/mail.php:24\nStack trace:\n#0 {main}\n thrown in /public_html/form/mail.php on line 24
Вот сам mail.php:
<?php
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
require_once('Exception.php');
require_once('PHPMailer.php');
require_once('SMTP.php');
$mail = new PHPMailer();
$mail->CharSet = 'utf-8';
$name = $_POST["name"];
$phone = $_POST["phone"];
$mail = $_POST["mail"];
$city = $_POST["city"];
$mail->SMTPDebug = 3; // Enable verbose debug output
$mail->isSMTP(); // Set mailer to use SMTP
$mail->Host = 'smtp.yandex.ru'; // Specify main and backup SMTP servers
$mail->SMTPAuth = true; // Enable SMTP authentication
$mail->Username = 'xxx@yandex.ru'; // Ваш логин от почты с которой будут отправляться письма
$mail->Password = 'xxx'; // Ваш пароль от почты с которой будут отправляться письма
$mail->SMTPSecure = 'ssl'; // Enable TLS encryption, `ssl` also accepted
$mail->Port = 465; // TCP port to connect to / этот порт может отличаться у других провайдеров
$mail->setFrom('xxx@yandex.ru'); // от кого будет уходить письмо?
$mail->addAddress('yyy@mail.ru'); // Кому будет уходить письмо
//$mail->addAddress('ellen@example.com'); // Name is optional
//$mail->addReplyTo('info@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>Почта этого пользователя: ' .$mail;
$mail->AltBody = '';
if(!$mail->send()) {
echo 'Письмо не может быть отправлено. ';
echo 'Ошибка: ' . $mail->ErrorInfo;
} else {
header('location: thanks.html');
}
?>