Pregunta

Estoy tratando de enviar correo usando el SMTP de Google en combinación con PHPMailer, pero no puedo hacerlo funcionar. Este es mi código:

$mail->IsSMTP();
$mail->Host = "smtp.gmail.com";
$mail->SMTPAuth = true;
$mail->SMTPSecure = "ssl";
$mail->Username = "myemail@gmail.com";
$mail->Password = "**********";
$mail->Port = "465";

Primero, no entiendo completamente qué se debe completar como 'SMTPSecure', algunos dicen ' ssl ', otros dicen ' tls '. Luego, para 'Puerto', podría ingresar '465' o '587'. Pero ninguna de las combinaciones funciona ... Tenga en cuenta que estoy usando una cuenta de Gmail normal y no Google Apps. En mi cuenta de Gmail he habilitado 'acceso POP'.

El error que recibo es: " Primero debe emitir un comando STARTTLS " ;. Lo que significa que SSL falló, pero no sé por qué ...

¿Fue útil?

Solución

Ok, el problema era la versión de PHPMailer. Actualicé a la versión 5 de PHPMailer y todo funcionó muy bien. Estaba usando phpMailer versión 1.02.

Otros consejos

Tuve problemas similares con GMail al usarlo a través de CodeIgniter

Para mí, cambiar la opción de host funcionó:

$mail->Host = "ssl://smtp.googlemail.com";

Establecer $ mail- > SMTPDebug = 1; Le dará más información sobre este error. Lo más probable es que consigas " No se puede encontrar el transporte de socket " ssl " - ¿Olvidaste habilitarlo cuando configuraste PHP " ;. Para arreglar esto, elimine " ;; " from; extension = php_openssl.dll línea en php.ini.

PS También me gusta XAMPP :)))

$ host = " ssl: //smtp.gmail.com" ;;  $ port = " 465 "

He cambiado de SSL a ssl. Funciona.

Según esta publicación aquí, es posible que Google ya no ofrezca este servicio:

http://www.web-development-blog.com/archives/send-e-mail-messages-via-smtp-with-phpmailer-and-gmail/

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top