<?php
ini_set('display_errors', '1');
ini_set('display_startup_errors', '1');
error_reporting(E_ALL);
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\SMTP;
use PHPMailer\PHPMailer\Exception;
//Load Composer's autoloader
require 'vendor/autoload.php';
$mail = new PHPMailer(true);
$mail->SMTPOptions = array(
'ssl' => array(
'verify_peer' => false,
'verify_peer_name' => false,
'allow_self_signed' => true
)
);
$mail->isSMTP(); //Send using SMTP
$mail->Host = 'ssl://smtp.yandex.ru'; //Set the SMTP server to send through
$mail->SMTPAuth = true; //Enable SMTP authentication
$mail->Username = 'username'; //SMTP username
$mail->Password = 'password'; //SMTP password
$mail->SMTPSecure = "ssl"; //Enable implicit TLS encryption
$mail->Port = 465;
$mail->CharSet = "UTF-8";
$mail->IsHTML(true);
$mail->setFrom("username", "Линия доставки");
// send to
$mail->addAddress("username", "Линия доставки");
$theme = '[ДАННЫЕ ИЗ ФОРМЫ ЛИНИЯ ДОСТАВКИ]';
$mail->Subject = $theme;
// letter's body
$body = '<h1>Данные формы:</h1>';
if(isset($_POST["tel"])){
$tel = $_POST["tel"];
}else{
$tel = "Данные телефона были утерены";
}
if (trim(!empty($tel))) {
$body .= '<p><strong>Телефон:</strong> ' . $tel . '</p>';
}
$mail->Body = $body;
// send
if (!$mail->send()) {
$message = 'Ошибка';
} else {
$message = 'Данные отправлены!';
}
$response = ['message' => $message];
header('Content-type: application/json');
echo json_encode($response);
$mail->smtpClose();
?>
var_dump($_POST);exit();
Возможно (и похоже на то) что вы отправляете форму аяксом, а данные передаете в теле как жсон например. Естественно, при этом ловить что либо в пост переменных бесполезно ), тут нужно будет щупать php://input
<?php
ini_set('display_errors', '1');
ini_set('display_startup_errors', '1');
error_reporting(E_ALL);
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\SMTP;
use PHPMailer\PHPMailer\Exception;
//Load Composer's autoloader
require 'vendor/autoload.php';
$mail = new PHPMailer(true);
$mail->SMTPOptions = array(
'ssl' => array(
'verify_peer' => false,
'verify_peer_name' => false,
'allow_self_signed' => true
)
);
$mail->isSMTP(); //Send using SMTP
$mail->Host = 'ssl://smtp.yandex.ru'; //Set the SMTP server to send through
$mail->SMTPAuth = true; //Enable SMTP authentication
$mail->Username = '****@yandex.ru'; //SMTP username
$mail->Password = '****'; //SMTP password
$mail->SMTPSecure = "ssl"; //Enable implicit TLS encryption
$mail->Port = 465;
$mail->CharSet = "UTF-8";
$mail->IsHTML(true);
$mail->setFrom("****@yandex.ru", "Линия доставки");
// send to
$mail->addAddress("****@yandex.ru", "Линия доставки");
$theme = '[ДАННЫЕ ИЗ ФОРМЫ ЛИНИЯ ДОСТАВКИ]';
$mail->Subject = $theme;
// letter's body
$body = '<h1>Данные формы:</h1>';
$json = file_get_contents('php://input');
$data = json_decode($json, true);
if (trim(!empty($data['tel']))) {
$tel = $data['tel'];
$body .= '<p><strong>Телефон:</strong> ' . $tel . '</p>';
}else{
$body .= '<p><strong>Телефон:</strong> ' . 'Данные телефона были утеряны' . '</p>';
}
$mail->Body = $body;
// send
if (!$mail->send()) {
$message = 'Ошибка';
} else {
$message = 'Данные отправлены!';
}
$response = ['message' => $message];
header('Content-type: application/json');
echo json_encode($response);
$mail->smtpClose();
?>