¿Qué es y para que sirve PHPMailer?
Hashtags: #Mail() #Formulario
Última actualización
Hashtags: #Mail() #Formulario
Última actualización
En algunos servidores no está disponible la función mail() de PHP. Esta función es cada vez más habitual que esté desactivada en los servidores como medida de seguridad. Normalmente se desactiva por protección contra SPAM, Mail Spoofing y Proxy Mail Servers. En caso de que cualquiera de las webs alojadas sea vulnerada por un usuario malintencionado, se evitan los riesgos mencionados, deshabilitando esta función.
La librería PHPMailer nos permite, entre otras funcionalidades, establecer una conexión SMTP con un servidor de correo. Este servidor SMTP será quién envíe realmente nuestro correo electrónico.
La web oficial del proyecto en GitHub contiene la documentación con las opciones de instalación y configuración. El enlace a Github es: https://github.com/PHPMailer/PHPMailer.
Descargá PHPMailer desde https://github.com/PHPMailer/PHPMailer. Presioná el botón verde Code y, luego, hacé clic en Download ZIP en el cuadro Clone.
Descomprimí el archivo descargado “PHPMailer-master.zip” y renombrá el directorio PHPMailer-master a PHPMailer
Copiá el directorio PHPMailer dentro de la raíz de tu página web (por ejemplo public_html). Para verificar que las rutas son correctas, debería existir, desde la raíz de nuestro proyecto: /PHPMailer/src/PHPMailer.php
Guardá el siguiente código en un archivo, por ejemplo, ejemplo.php
Modificá los parámetros de conexión en este archivo, el email del remitente y del destinatario donde enviáremos nuestro correo de prueba. Buscá las siguientes lineas en el script y reemplazá los datos por los tuyos. ¡Es muy importante configurar estos datos usando una casilla valida a la que puedas acceder!
Debajo verás esta sección para completar con tus datos:
Y la ultima sección a completar con tus datos:
Subí por FTP o, utilizando el Administrador de Archivos de cPanel, el directorio PHPMailer y el archivo ejemplo.php a la raíz del directorio público de tu pagina web (public_html).
Ejecutá el ejemplo desde https://tudominio.com/ejemplo.php
.
Te mostrará el debug del proceso y, luego recibirás el correo electrónico:
"El mensaje se ha enviado"
Si muestra algún error, ya sea de PHP o de conexión SMTP, deberás depurar el origen del problema. El mensaje de error que recibirías en este caso es:
"El mensaje no se ha enviado. Mailer Error:<tipo de error>
En producción, recordá desactivar el debug de errores PHP y SMTP cambiando las primeras lineas del código de prueba: