На моем локальном хосте phpmailer отлично работал.
Теперь я размещаю его на своем веб-сайте, и всякий раз, когда я отправляю ту же форму в Интернете, перед письмом с информацией появляется пустое электронное письмо.
У меня есть проверка на стороне клиента, но у меня нет проверки на стороне сервера.
<?php
// Import PHPMailer classes into the global namespace
// These must be at the top of your script, not inside a function
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\SMTP;
use PHPMailer\PHPMailer\Exception;
// Load Composer's autoloader
require 'vendor/autoload.php';
// Instantiation and passing `true` enables exceptions
$mail = new PHPMailer(true);
try {
//Server settings
//$mail->SMTPDebug = 1; // Enable verbose debug output
$mail->isSMTP(); // Send using SMTP
$mail->Host = ''; // Set the SMTP server to send through
$mail->SMTPAuth = true; // Enable SMTP authentication
$mail->Username = ''; // SMTP username
$mail->Password = ''; // SMTP password
$mail->SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS; // Enable TLS encryption; `PHPMailer::ENCRYPTION_SMTPS` encouraged
$mail->Port = 25; // TCP port to connect to, use 465 for `PHPMailer::ENCRYPTION_SMTPS` above
//Recipients
//removed the recipients from here
$enquiry = $_POST['enquiry'];
$name = $_POST['name'];
$email = $_POST['email'];
$number = $_POST['number'];
// Content
$mail->isHTML(true); // Set email format to HTML
$mail->Subject = $enquiry;
$mail->Body = nl2br("Name: " . $name . "\n" . "Email: " . $email . "\n" . "Number: " . $number . "\n" );
$mail->send();
echo 'Message has been sent';
} catch (Exception $e) {
echo "Message could not be sent. Mailer Error: {$mail->ErrorInfo}";
}