/ / PHPMailer wysyła wiadomość e-mail tylko wtedy, gdy SMTPDebug = true - php, debugowanie, smtp, phpmailer

PHPMailer wysyła wiadomości tylko wtedy, gdy SMTPDebug = true - php, debugging, smtp, phpmailer

Używam PHPmailera. Działa, gdy $ mail-> SMTPDebug = true; ale kiedy usunę tę linię, po cichu zawiedzie. Mówię, że po cichu zawodzi, ponieważ nie daje żadnych błędów, a jednak e-mail nie wydaje się być dostarczony.

        $mail = new PHPMailer;

$mail->SMTPDebug = true;
$mail->SMTPAuth = true;
$mail->CharSet = "utf-8";
$mail->SMTPSecure = "ssl";
$mail->Host = "smtp.gmail.com";
$mail->Port = "465";
$mail->Username = "xxxxx@gmail.com";
$mail->Password = "xxxxx";
$mail->Mailer = "smtp";
$mail->AddReplyTo("support@xxxxx.com", "xxxxx Support");
$mail->From = "xxxxx@gmail.com";
$mail->FromName = "xxxxx Applications";
$mail->Sender = "xxxxx Applications";
$mail->Priority = 3;

//To us
$mail->AddAddress("xxxxx@xxxxx.com", "xxxxx xxxxx");
//To Applicant
$mail->AddAddress($email, $first_name."".$last_name);
$mail->IsHTML(true);

$last_4_digits = substr($card_num, -4);
//build email contents

$mail->Subject = "Application From ".$first_name." ".$last_name;
$mail->Body    = $body_html;
$mail->AltBody = $body_text;

if(!$mail->send()) {
echo "Message could not be sent.";
echo "Mailer Error: " . $mail->ErrorInfo;
exit;
}

Odpowiedzi:

12 dla odpowiedzi № 1

Przez ustawienie

        $mail->SMTPDebug = false;

zamiast całkowicie pomijać linię, działa za każdym razem.