2014-09-30 5 views
1

Я пытаюсь отправить письмо с помощью Gmail smtp, но я не отправляю почту. Я также не получаю никаких ошибок, я просто получаю пустую страницу. Вот мой код, надеюсь, вы сможете мне помочь.Gmail smtp не отправляет мои письма

<?php 
require 'class.phpmailer.php'; 
$mail = new PHPMailer; 
$mail->isSMTP(); 
$mail->SMTPDebug = 2; 
$mail->Debugoutput = 'html'; 
$mail->Host = 'smtp.gmail.com'; 
$mail->Port = 465; 
$mail->SMTPSecure = 'ssl'; 
$mail->SMTPAuth = true; 
$mail->Username = "MyEmail"; 
$mail->Password = "Mypassword"; 
$mail->setFrom('MyEmail'); 
$mail->addReplyTo('MyEmail'); 
$mail->addAddress('MyEmail'); 
$mail->Subject = 'PHPMailer GMail SMTP test'; 
$mail->Body = 'This is a plain-text message body'; 
if (!$mail->send()) { 
    echo "Mailer Error: " . $mail->ErrorInfo; 
} else { 
    echo "Message sent!"; 
} 
?> 

Обратите внимание, что я ввел правильные письма и пароли.

+0

ли у работает этот локальный или на сервере? Если это первый, то может быть, что порт заблокирован – DarkBee

+0

Нет. Я не запускаю его на локальном сервере. Но если он будет заблокирован, я не получу ошибку? – user2479441

+1

попробуйте поместить неправильный пароль и имя пользователя, чтобы узнать, есть ли у вас какие-либо ошибки. если вы получите сообщение об ошибке, следующая вещь должна была бы проверить php_info(); чтобы узнать, установлено ли приложение для отправки почты. также проверьте, что error_reporting (E_ALL); и display_errors = On – peterpeterson

ответ

1

По умолчанию PHPMailer отправит почту, используя функцию php mail() (sendmail). Вам нужно включить smtp класс для PHPMailer, чтобы иметь возможность отправлять почту с помощью SMTP

require 'class.phpmailer.php'; 
require 'class.smtp.php'; 

вы можете получить его от github

+0

Спасибо, что решил, что он ничего не ответил. У меня появился новый вопрос, где я буду смотреть. – user2479441

Смежные вопросы