Enviar correo en PHP con PHPMailer y Mailtrap

Hola a todos, hoy os voy a explicar como podemos enviar un correo en PHP con PHPMailer y Mailtrap.

Algo importante en aplicaciones webs es poder enviar correos, con PHP se puede hacer con la función mail, pero es algo limitada, por lo que os recomiendo usar la clase PHPMailer.

Lo primero es descargar PHPMailer desde su github. Lo puedes hacer aquí

Recuerda descargarlo en el botón verde «clone or download»

Cuando lo tengas descargado, copiate en tu proyecto los ficheros de la carpeta src, la clase Exception no es necesaria.

Otra cosa que necesitamos es hacernos una cuenta en mailtrap que nos permite simular un servidor de correo, esto viene muy a nivel de desarrollo con localhost.

Os recomiendo guardar en una carpeta llamada libs, las clases de PHPMailer.

Vamos a crear un pequeño formulario para enviar el correo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
lang="en">
    charset="UTF-8">
    name="viewport" content="width=device-width, initial-scale=1.0">
    </span><span class="crayon-i ">Ejemplo enviar correo</span><span class="crayon-r ">
    
    
action="enviar-mail.php" method="POST">
 
        
            
            type="text" name="subject" id="subject" />
        
        
            
            
        
        
            type="submit" value="Enviar">
        
 
    
 

Importamos todas las clases de PHPMailer:

El use se usa ya que PHPMailer, tiene un namespace y se debe importar de esa forma.

Ahora vamos a crear unas cuantas constantes:

La mayoría las puedes sacar de mailtrap:

Obtenemos los valores:

Ahora creamos el objeto PHPMailer, lo encerramos en un try catch para ver los errores en caso de error.

Ahora metemos la configuración:

Ahora vamos a indicar el origen, el correo donde se mandará, el asunto, el mensaje y si le quiero meter etiquetas HTML:

Y por fin, vamos a enviar el correo, nos indica si ha ido bien o no:

Aquí os dejo el ejemplo completo:

index.php

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
lang="en">
    charset="UTF-8">
    name="viewport" content="width=device-width, initial-scale=1.0">
    </span><span class="crayon-i ">Ejemplo enviar correo</span><span class="crayon-r ">
    
    
action="enviar-mail.php" method="POST">
 
        
            
            type="text" name="subject" id="subject" />
        
        
            
            
        
        
            type="submit" value="Enviar">
        
 
    
 

enviar-mail.php

Puedes descargar aquí todo el ejemplo.

Espero que os sea de ayuda. Si tenéis dudas, preguntad. Estamos para ayudarte.

Compartir

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *


Warning: Trying to access array offset on value of type null in /home2/discodur/public_html/discoduroderoer/wp-content/themes/disto/single.php on line 539