Enviar correos con PHPMailer y multiples archivos adjuntos
Enviar correos con PHPMailer y múltiples archivos adjuntos. En el internet existen varios modelos de formularios de contacto, algunos de ellos escritos en PHP, jQuery, entre otros lenguajes. Por lo tanto, en esta publicación nos enfocaremos en que el usuario que interactúa con el formulario tenga la opción de cargar múltiples ficheros.
Enviar correos con PHPMailer y multiples archivos adjuntos
Para lograr este objetivo nos apoyaremos en el lenguaje jQuery para generar campos múltiples y que permita al usuario subir varios archivos adjuntos.
¿Cómo funciona este código?
Como mencione anteriormente, este código para incrementar dinámicamente campos sin que el navegador se actualice. Por lo tanto, usaremos el leguaje jQuery para lograr tal dinamismo.
Etiqueta «div» que contendrá un evento tipo «OnClick
» llamado «AgregarArchivos();
» que desencadenara la ejecución del jQuery
<div onClick="AgregarArchivos();" class="icon-add-more-attachemnt" title="Agregar más archivos"> <img src="image/addthis.png" alt="Agregar más archivos"> </div> <div>
Funcion jQuery que generara nuevos campos para subir ficheros al formulario.
function AgregarArchivos() { $(".attachment-row:last").clone().insertAfter(".attachment-row:last"); $(".attachment-row:last").find("input").val(""); }
Componentes de este código «envío múltiples archivos adjuntos»
Este paquete contiene diversos archivos, carpetas y/o clases PHP.
- Librería BootStrap (Carpeta assets y dist)
- Carpeta «image»
- La clase PHPMAILER (phpmailer)
- Fichero PHP llamado (Envio_correo.php)
- Archivo llamado (index.php)
- Hoja de estilo en cascada (CSS)
¿Qué es PHPMAILER?
PHPMailer es una clase escrita en base de PHP que es muy utilizado para el envío de correos electrónicos por internet, agregando características nuevas como ser:
- El envío de correos con adjuntos
- Incorporación del formato HTML y con diferentes codificaciones
- Soporte para imágenes embebidas
- Cabeceras personalizados por el usuario
- Es multifuncional porque funciona con múltiples servidores de correos electrónicos.
Configuración del sistema envío múltiples archivos adjuntos.
Vamos a usar PHPMailer para enviar el correo electrónico del formulario de contacto a través del potente servidor Gmail SMTP.
Por lo tanto, es importante realizar la siguiente configuración de SMTP en el fichero «Envio_correo.php».
Agregue el nombre de usuario SMTP y la contraseña en las líneas 12 y 13.
$mail->Username = "YOUR SMTP USERNAME"; $mail->Password = "YOUR SMTP PASSWORD";
Agregue la dirección de correo electrónico del destinatario en la línea 31 del presente fichero.
$mail->SetFrom($userEmail, $userName); $mail->AddReplyTo($userEmail, $userName); $mail->AddAddress("YOUR RECIPIENT EMAIL"); // Cambiar el correo electronico
Al ejecutar este código y presionar el botón «+» el evento importante es el siguiente que muestra la imagen.
CONCLUSIÓN
Hoy en día el lenguaje jQuery y otros relacionados con los eventos que se ejecutan al lado del servidor están tomando gran auge, por el simple hecho que ahorramos tiempo y además no saturamos el servidor con peticiones básicas.
Su uso es recomendable para tener un sistema web acorde con la tecnología actual, también agregamos estilos externos como el bootstrap.
Gracias por el aporte logre que se enviara el correo pero no los adjuntos abra algo que hay que editar aparte de lo que mencionas