У меня странная проблема с PHP. Я использую PHPMailer вместе с JQuery для повторения нескольких адресов электронной почты и отправки их по отдельности.
Оно работает. НО ... PHPMailer вызывает исключение, которое отправитель не найден. Я попробовал var_dump () и повторил $ ??_POST или $ _GET для электронной почты отправителя, и я ничего не получил. Другой $ _POST / $ _ GET показывается просто отлично, просто сообщение не отображается, даже в console.log.
Я упоминал, что это работает? Это странная часть; сценарий обрабатывается нормально, и электронные письма отправляются. Я просто получаю исключение PHPMailer и не вижу переменную $ _POST / $ _ GET.
Любая помощь ценится!
Вот JQuery -
// ------ Mail Send-Multi Button ------------
$(document).on('click','#send-multi',function(e){
e.preventDefault;
var subj = $('#subject').val();
var msg = $('#msg').val();
var i = 0;
$(".mailchek input:checkbox").each(function () {
if (this.checked) {
var sto = $(this).val();
//alert($(this).val());
i++;
//alert(i);
var itm = "sendto="+sto+"&subject="+subj+"&msg="+msg;
alert(itm);
//ajax for multi email
$.ajax({
type: "GET",
url: "webmail.php",
data: itm,
success: function(result){
//alert(result);
alert("test");
},
error: function (xhr, ajaxOptions, thrownError) {
alert(xhr.status);
alert(thrownError);
}
});//End AJAX
} //end Address loop
});
Вот PHPMailer -
<?php
// Import PHPMailer classes into the global namespace
// These must be at the top of your script, not inside a function
use PHPMailerPHPMailerPHPMailer;
use PHPMailerPHPMailerException;
require 'phpmailer/src/Exception.php';
require 'phpmailer/src/PHPMailer.php';
require 'phpmailer/src/SMTP.php';
$mail = new PHPMailer(true); // Passing `true` enables exceptions
try {
//Server settings
$mail->SMTPDebug = 0; // Verbose debug off. Change to '2' for debug echo
$mail->isSMTP(); // Set mailer to use SMTP
$mail->Host = 'smtp.somehost.com'; // Specify main and backup SMTP servers
$mail->SMTPAuth = true; // Enable SMTP authentication
$mail->Username = 'info@somecompany.com'; // SMTP username
$mail->Password = 'password'; // SMTP password
$mail->SMTPSecure = 'ssl'; // Enable TLS encryption, `ssl` also accepted
$mail->Port = 465; // TCP port to connect to
//Recipients
$mail->setFrom('info@somecompany.com', 'Name');
$mail->addAddress($_GET[sendto]); // Add a recipient
//Content
$mail->isHTML(true); // Set email format to HTML
$mail->Subject = $_GET[subject];
$mail->Body = $_GET[msg];
$mail->send();
echo "here ".$send;
echo 'Message has been sent';
} catch (Exception $e) {
echo 'Message could not be sent. Mailer Error: ', $mail->ErrorInfo;
}
?>
У меня странная проблема с PHP. Я использую PHPMailer вместе с JQuery для повторения нескольких адресов электронной почты и отправки их по отдельности.
Оно работает. НО ... PHPMailer вызывает исключение, которое отправитель не найден. Я попробовал var_dump () и повторил $ ??_POST или $ _GET для электронной почты отправителя, и я ничего не получил. Другой $ _POST / $ _ GET показывается просто отлично, просто сообщение не отображается, даже в console.log.
Я упоминал, что это работает? Это странная часть; сценарий обрабатывается нормально, и электронные письма отправляются. Я просто получаю исключение PHPMailer и не вижу переменную $ _POST / $ _ GET.
Любая помощь ценится!
Вот JQuery -
// ------ Mail Send-Multi Button ------------
$(document).on('click','#send-multi',function(e){
e.preventDefault;
var subj = $('#subject').val();
var msg = $('#msg').val();
var i = 0;
$(".mailchek input:checkbox").each(function () {
if (this.checked) {
var sto = $(this).val();
//alert($(this).val());
i++;
//alert(i);
var itm = "sendto="+sto+"&subject="+subj+"&msg="+msg;
alert(itm);
//ajax for multi email
$.ajax({
type: "GET",
url: "webmail.php",
data: itm,
success: function(result){
//alert(result);
alert("test");
},
error: function (xhr, ajaxOptions, thrownError) {
alert(xhr.status);
alert(thrownError);
}
});//End AJAX
} //end Address loop
});
Вот PHPMailer -
<?php
// Import PHPMailer classes into the global namespace
// These must be at the top of your script, not inside a function
use PHPMailerPHPMailerPHPMailer;
use PHPMailerPHPMailerException;
require 'phpmailer/src/Exception.php';
require 'phpmailer/src/PHPMailer.php';
require 'phpmailer/src/SMTP.php';
$mail = new PHPMailer(true); // Passing `true` enables exceptions
try {
//Server settings
$mail->SMTPDebug = 0; // Verbose debug off. Change to '2' for debug echo
$mail->isSMTP(); // Set mailer to use SMTP
$mail->Host = 'smtp.somehost.com'; // Specify main and backup SMTP servers
$mail->SMTPAuth = true; // Enable SMTP authentication
$mail->Username = 'info@somecompany.com'; // SMTP username
$mail->Password = 'password'; // SMTP password
$mail->SMTPSecure = 'ssl'; // Enable TLS encryption, `ssl` also accepted
$mail->Port = 465; // TCP port to connect to
//Recipients
$mail->setFrom('info@somecompany.com', 'Name');
$mail->addAddress($_GET[sendto]); // Add a recipient
//Content
$mail->isHTML(true); // Set email format to HTML
$mail->Subject = $_GET[subject];
$mail->Body = $_GET[msg];
$mail->send();
echo "here ".$send;
echo 'Message has been sent';
} catch (Exception $e) {
echo 'Message could not be sent. Mailer Error: ', $mail->ErrorInfo;
}
?>
00PHP, почта, PHPMailer,