2016-12-13 16 views
1

Я не знаю, что еще нужно сделать, чтобы отправлять электронную почту, используя phpmailer и WampServer. Я настроил WAMP так же, как я читал на многих форумах, но я не могу заставить его работать. У меня есть этот пример:Как отправить электронную почту с помощью PhpMailer и WAMP

<?php 
if(isset($_POST['email'])){ 
    //envia correo desde el servidor local (pruebas) 
    include("clases/class.phpmailer.php"); 
    include("clases/class.smtp.php"); 
    $mail = new PHPMailer(); 
    $mail->IsSMTP(); 
    $mail->SMTPAuth = true; 
    $mail->SMTPSecure = "ssl"; 
    $mail->Host = "smtp.gmail.com"; 
    $mail->Port = 587; 
    $mail->Username = "[email protected]"; 
    $mail->Password = "****"; 

    $mail->From = "[email protected]"; 
    $mail->FromName = "Resto"; 
    $mail->Subject = "Subject del Email"; 
    $mail->AltBody = "Hola, te doy mi nuevo numero\nxxxx."; 
    $mail->MsgHTML("Hola, te doy mi nuevo numero<br><b>xxxx</b>."); 
    //$mail->AddAttachment("files/files.zip"); 
    //$mail->AddAttachment("files/img03.jpg"); 
    $mail->AddAddress($_POST['email'], "user name"); 
    $mail->IsHTML(true); 

    if(!$mail->Send()) { 
     echo "Error: " . $mail->ErrorInfo; 
     return false; 
    } 

    //fin enviar correo usuando servidor local 
} 
?> 

<form id="form1" name="form1" method="post" action=""> 
    <p> 
     <label for="email"></label> 
     <input type="text" name="email" id="email" /> 
    </p> 
    <p> 
     <input type="submit" name="enviar" id="enviar" value="Enviar" /> 
    </p> 
</form> 

Мне сказали, что он не работает с gmail, поэтому я должен использовать другую почтовую почту. Я получаю эту ошибку:

Ошибка SMTP: не удалось подключиться к узлу SMTP. Ошибка: Ошибка SMTP: не удалось подключиться к узлу SMTP.

Что я могу сделать, чтобы это сработало?

спасибо!

+0

Вы видите это: https://github.com/PHPMailer/PHPMailer /blob/master/examples/gmail.phps –

+1

Здесь мы снова и снова ... предполагая, что это для личного проекта и что вы изучаете php с нуля, тогда нормально использовать внешнюю учетную запись электронной почты, чтобы отправлять тестовые электронные письма .... но все же ммммм ... лучше начать изучать некоторые основные концепции ООП, а затем перейти к инфраструктуре php, например, laravel или codeigniter (я рекомендую это для начала ers) – Hackerman

+0

Похоже, вы используете старую версию PHPMailer и основали свой код на устаревшем (и неправильном) примере. Получите последнюю версию (https://github.com/PHPMailer/PHPMailer) и прочитайте документы. – Synchro

ответ

0

Попробуйте этот порт

$mail->Port = 465; 

Я думаю, что это решит вашу проблему.

+0

Привет, спасибо за ответ, я тоже пробовал это, но еще не работал: S – GHM

+0

вам нужно изменить свою конфигурацию sendmail, тогда она будет работать. –

0

Убедитесь, что у вас есть

;extension=php_openssl.dll 

раскомментировать в php.ini

И изменить

$mail->SMTPSecure = "ssl"; 

в

$mail->SMTPSecure = "tls"; 

как ваш используете Tls порт для SSL (https://support.google.com/mail/answer/7126229)

Если оба из них не помогают добавить

$mail->SMTPDebug = 2; 

Он покажет вам более подробную информацию о проблеме

+0

Привет, я изменил его, как вы сказали, ошибка теперь говорит: SMTP -> ОШИБКА: Не удалось подключиться к серверу: Непосредственно подключиться к серверу bien se produjo un error en la conexión establecida ya que el host conectado no ha podido responder. (10060) Ошибка SMTP: не удалось подключиться к узлу SMTP. Ошибка: Ошибка SMTP: не удалось подключиться к узлу SMTP. – GHM

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

  • Нет связанных вопросов^_^