2017-06-15 9 views
0

私はPHP Mailer(https://github.com/PHPMailer/PHPMailer)を使用しています。何らかの理由でGmailと連携していません。私は使用する必要があります他の設定がある場合誰も知っていますか?PHPMailer Gmailを使用しないで送信する

function send_email($mail_content,$subject,$email,$name) 
     { 
      include_once('third-party/mail/phpmailer-master/PHPMailerAutoload.php');  
      $php_mailer_mail = new PHPMailer; 
      $php_mailer_mail->isSMTP(); 
      $php_mailer_mail->Host = 'smtp.gmail.com'; 
      $php_mailer_mail->SMTPAuth = true; 
      $php_mailer_mail->Username = '[email protected]'; 
      $php_mailer_mail->Password = 'password'; 
      $php_mailer_mail->SMTPSecure = 'ssl'; 
      $php_mailer_mail->Port = 465; 
      $php_mailer_mail->From = '[email protected]'; 
      $php_mailer_mail->FromName = 'Me'; 
      $php_mailer_mail->addAddress($email, $name); 
      $php_mailer_mail->isHTML(true); 
      $php_mailer_mail->Subject = $subject; 
      $php_mailer_mail->Body = $mail_content; 
      $php_mailer_mail->send(); 
     } 
+0

「動作していません」と定義してください – Utkanos

+0

メールが届かない – BCLtd

答えて

0

Gmailの設定でIMAPを有効にしてください。 smtpはIMAPではありませんが、アカウント設定で有効になっている場合を除き、Googleはお客様のアカウントに対してsmtpリクエストを破棄します。

TLS暗号化を使用してポート587を試してみることもできます。

0

エラーが発生しますか?

$php_mailer_mail->send();リターンはあなたがあなたの代わりにsslのポート587tlsを使用する必要があります。とにかく$php_mailer_mail->ErrorInfo

を検査することができるfalse場合。

$php_mailer_mail->Port = 587; 
$php_mailer_mail->SMTPSecure = 'tls'; 

あなたは

SMTPは、正確な時間を必要とします(上記のリンクでの例から)さらに

https://github.com/PHPMailer/PHPMailer/blob/master/examples/gmail.phps

を見てとることができ、およびPHPのタイムゾーンでなければなりませんset これはあなたのphp.iniで行うべきですが、これはアクセス権がない場合に行う方法です

date_default_timezone_set('Etc/UTC'); 

この行は、スクリプトの冒頭にある必要があります。 もちろん、ユーザー名とパスワードを再確認してください。

希望します。

関連する問題