2015-11-10 6 views
1

Мне нужна помощь при отправке электронной почты в PHP. Я действительно пытаюсь отправить электронное письмо с помощью PHP-почты. Так или иначе, для некоторых из идентификаторов почты я могу отправить электронное письмо, но для некоторых других идентификаторов электронной почты я не могу отправить. Я получаю электронное письмо в gmail, в котором говорится, что попытка «Signin try prevented». Может кто-нибудь помочь мне узнать, где мне нужно изменить настройки в моей учетной записи gmail, чтобы мой PHP-код отправил электронные письма?Попытка электронной почты Ошибка при вводе через PHP в gmail

require("phpmailer/class.PHPMailer.php"); 
require("phpmailer/class.smtp.php"); 
$f_pointer=fopen("test.csv","r"); // file pointer 
$emails = array(); 
while (($data = fgetcsv($f_pointer, 1000, ",")) !== FALSE) { 
    $num = count($data); 
    $emails[] = $data[1]; 
} 
foreach($emails as $key=>$val){ 
    $mail = new PHPMailer(); 

    $mail->IsSMTP();       // set mailer to use SMTP 
    $mail->Host = "tls://smtp.gmail.com:587"; // specify main and backup server 
    $mail->SMTPAuth = true;  // turn on SMTP authentication 
    $mail->Username = "abc"; // SMTP username 
    $mail->Password = "some password"; // SMTP password 

    $mail->From = "[email protected]"; 
    $mail->FromName = "abc"; 
    $mail->AddAddress($val); 

    $mail->Subject = "Here is the subject"; 
    $mail->Body = "This is the HTML message body <b>in bold!</b>"; 
    $mail->AltBody = "This is the body in plain text for non-HTML mail clients";      

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

    echo "Message has been sent"; 
} 

Это работает отлично в течение некоторого примера «[email protected]», но когда я использую другое имя пользователя, пароль и адрес электронной почты говорят «[email protected]» я получаю электронную почту в своем почтовом ящике с указанием «для входа в аккаунт попытка не удалась ». Помогите оценить.

+0

Вы можете разместить код? – Stefan

+0

Вам необходимо [прочитать документы] (https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting). – Synchro

ответ

4

Она была решена путем включения разрешения на менее защищенные приложения в ссылке https://www.google.com/settings/security/lesssecureapps

+0

Если вы прочитали [документы PHPMailer] (https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting) сообщение об ошибке, которое вы видели, указали на вас, вы бы быстрее обнаружили это. – Synchro

+1

этого было недостаточно для меня, так что помимо включения «разрешать менее безопасные приложения» вам также нужно перейти на https://accounts.google.com/DisplayUnlockCaptcha. – dang

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