#php #class #email #phpmailer #uncaught-exception
Вопрос:
Я пытался отправлять письма с учетной записи smtp. Поэтому я Использовал PHPMailer, Но Получил Ошибку, но я не знаю, что делать.
Кто-нибудь Может мне Помочь?
Fatal error: Uncaught Error: Class 'PHPMailer' not found in C:xampphtdocsYCSfun.php:27
Вот мой код
config.php
use PHPMailerPHPMailerPHPMailer;
use PHPMailerPHPMailerException;
require 'vendor/PHPMailer/src/Exception.php';
require 'vendor/PHPMailer/src/PHPMailer.php';
require 'vendor/PHPMailer/src/SMTP.php';
require 'fun.php';
index.php
<?php
require 'config.php';
?>
fun.php
$mail = new PHPMailer(true);
$mail->SMTPDebug = 2;
$mail->IsSMTP();
$mail->Host = $_CONFIG["SenderEmail"]["host"];
$mail->SMTPAuth = true;
$mail->Username = $_CONFIG["SenderEmail"]["mail"];
$mail->Password = $_CONFIG["SenderEmail"]["pass"];
$mail->SMTPSecure = 'tls';
$mail->Port = 587;
$mail->AddAddress($email, $name);
$mail->SetFrom($_CONFIG["SenderEmail"]["mail"], $_CONFIG["SenderEmail"]["name"]);
$mail->IsHTML(true);
$mail->CharSet = 'UTF-8';
$mail->Subject = "Verification Code";
$mail->Body = "<h1>".$code."</h1>";
$mail->Send();
$re = array ('response'=>'success');
Комментарии:
1. Вы включили что-то, что включает в себя материалы PHPMailer, например, в
fun.php
config.php
файл2. ваш index.php здесь не используется. Как уже упоминалось, вам необходимо включить эту конфигурацию в свой fun.php файл тоже.
3. Это в основном означает, что php не может найти определение класса, в котором вы пытаетесь создать экземпляр fun.php, включение в файл, в котором содержится определение, должно исправить это. имейте в виду, что путь правильный (это будет include или include_once)
4. вы используете composer? тогда вы можете использовать require ‘vendor/autoload.php’;