Como enviar correos en php con phpmailer
1. Primero, para poder enviar correos en PHP con PHPMailer, deberás haber instalado previamente PHPMailer en Linux. Aquí está el video:
2. Creamos un archivo php llamado index.php en nuestro servidor web "/var/www/html/index.php"
3. ponemos el siguiente codigo:
<?php
// Cargar la librería PHPMailer instalada con Composer
require 'vendor/autoload.php';
// Importar las clases necesarias de PHPMailer
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
// Crear una nueva instancia de PHPMailer
$mail = new PHPMailer(true); // 'true' habilita excepciones para manejar errores
try {
/**
* CONFIGURACIÓN DEL SERVIDOR SMTP
* SMTP (Simple Mail Transfer Protocol) es el protocolo usado para enviar correos electrónicos.
*/
$mail->isSMTP(); // Habilitar el uso de SMTP
$mail->Host = 'smtp.gmail.com'; // Servidor SMTP (Gmail en este caso)
$mail->SMTPAuth = true; // Habilitar autenticación SMTP
$mail->Username = '[email protected]'; // Correo que enviará los mensajes
$mail->Password = 'clave de aplicacion'; // Contraseña del correo (puede requerir configuración de acceso en Gmail)
$mail->SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS; // Cifrado de seguridad TLS (puede ser SSL en algunos servidores)
$mail->Port = 587; // Puerto usado por Gmail para conexiones TLS (465 para SSL)
/**
* CONFIGURACIÓN DEL REMITENTE Y DESTINATARIO
* Se define quién envía el correo y a quién va dirigido.
*/
$mail->setFrom('[email protected]', 'Nombre'); // Dirección y nombre del remitente
$mail->addReplyTo('[email protected]','Nombre'); // Añadido para respuestas
$mail->addAddress('[email protected]', 'Nombre'); // Dirección y nombre del destinatario
/**
* CONTENIDO DEL CORREO
* Se define el formato y el contenido del mensaje.
*/
$mail->isHTML(true); // Indica que el contenido del correo será en formato HTML
$mail->Subject = 'Prueba de PHPMailer'; // Asunto del correo
$mail->Body = 'Este es un correo de prueba enviado con PHPMailer en AlmaLinux.'; // Cuerpo del mensaje en HTML
/**
* ENVÍO DEL CORREO
* Si el envío es exitoso, se muestra un mensaje de confirmación.
*/
$mail->send();
echo 'Correo enviado correctamente.';
} catch (Exception $e) {
/**
* MANEJO DE ERRORES
* Si ocurre un error, se muestra un mensaje con la razón del fallo.
*/
echo "Error al enviar el correo: ". $e->getMessage();
}
?>
4. Guardamos el archivo y nos dirijimos a nuestro navegador web y ponemos la ip del servidor para ejecutar el archivo php: www.ip/index.php
5. Listo, te debe mostrar un mensaje de correo enviado correctamente y verificas el correo al que lo enviaste.