Enviar correo electrónico utilizando PHPMailer en CodeIgniter

La clase de correo electrónico de CodeIgniter es la forma más sencilla de enviar correo electrónico en la aplicación CodeIgniter . No solo el correo electrónico de texto / html, sino que también puede enviar el correo electrónico a través del servidor SMTP utilizando la biblioteca de correo electrónico CodeIgniter. Esta clase de correo electrónico es una biblioteca del sistema y viene con el marco CodeIgniter. Por lo tanto, se puede usar fácilmente en la aplicación CodeIgniter sin una biblioteca adicional. Alternativamente, la biblioteca PHPMailer es la mejor opción para enviar correo electrónico a través del servidor SMTP sin utilizar la biblioteca de correo electrónico predeterminada CodeIgniter.
En general, la biblioteca PHPMailer se utiliza para enviar correos electrónicos con el servidor SMTP en PHP . También puede usar la biblioteca PHPMailer en el marco de CodeIgniter para enviar correos electrónicos utilizando el servidor SMTP. En este tutorial, le mostraremos cómo integrar PHPMailer en la aplicación CodeIgniter 3 y enviar correos electrónicos a través del servidor SMTP usando PHPMailer en CodeIgniter.

Integrar PHPMailer en CodeIgniter

Al principio, descargue los últimos archivos de la biblioteca PHPMailer y coloque todos los archivos en la application/third_party/carpeta de su aplicación CodeIgniter.
aplicación / 
└── third_party / 
    └── PHPMailer /
        ├── Exception.php
        ├── OAuth.php
        ├── PHPMailer.php
        ├── POP3.php
        └── SMTP.php
Tenga en cuenta que: Todos los archivos de la biblioteca PHPMailer están incluidos en el código fuente, no es necesario descargar PHPMailer por separado.
Ahora, cree una biblioteca ( application/libraries/Phpmailer_lib.php) para manejar el objeto PHPMailer.
  • Incluir los archivos de la biblioteca PHPMailer.
  • Inicializa la clase PHPMailer.
  • Devuelve el objeto PHPMailer.
<? php
definido ( 'BASEPATH' ) O salir ( 'No se permite el acceso directo al script' );

/ **
 * CodeIgniter PHPMailer Class
 *
 * Esta clase habilita el correo electrónico SMTP con PHPMailer
 *
 * @category Libraries
 * @author CodexWorld
 * @link https://www.codexworld.com
 * /

use  PHPMailer \ PHPMailer \ PHPMailer ;
use  PHPMailer \ PHPMailer \ Exception ;
clase  PHPMailer_Lib
 {
    función pública  __construct () {
         log_message ( 'Debug' 'La clase PHPMailer está cargada.' );
    }

    public function  load () {
         // Incluir los archivos de la biblioteca
         PHPMailer require_once  APPPATH . 'third_party / PHPMailer / Exception.php' ;
        require_once  APPPATH . 'third_party / PHPMailer / PHPMailer.php' ;
        require_once  APPPATH . 'third_party / PHPMailer / SMTP.php' ;
        
        $ mail  = nuevo  PHPMailer ;
        devolver  $ mail ;
    }
}

Enviar correo electrónico utilizando PHPMailer en CodeIgniter

Con la biblioteca PHPMailer_Lib puede enviar correos electrónicos con PHPMailer en su aplicación CodeIgniter. El siguiente código de ejemplo muestra cómo enviar correo electrónico a través del servidor SMTP usando PHPMailer desde el controlador de la aplicación CodeIgniter.
  • Cargue la biblioteca PHPMailer_Lib.
  • Llame a la load()función de PHPMailer_Lib.
  • Especifique el host ( $mail->Host), el nombre de usuario ( $mail->Username), la contraseña ( $mail->Password) y el puerto ( $mail->Port) según sus credenciales de servidor SMTP.
  • Establézcalo isHTML()en VERDADERO para enviar correo electrónico HTML.
<? php
definido ( 'BASEPATH' ) O salir ( 'No se permite el acceso directo al script' );

El correo electrónico de la  clase  extiende  CI_Controller {
    
    función   __construct () {
         parent :: __construct ();
    }
    
    function  send () {
         // Load PHPMailer library
         $ this -> load -> library ( 'phpmailer_lib' );
        
        // objeto PHPMailer
         $ mail  $ this -> phpmailer_lib -> load ();
        
        // configuración SMTP
         $ mail -> isSMTP ();
        $ mail -> Host      'smtp.example.com' ;
        $ mail -> SMTPAuth  true ;
        $ mail -> Nombre de usuario  'usuario@ejemplo.com' ;
        $ mail -> Contraseña  '********' ;
        $ mail -> SMTPSecure  'ssl' ;
        $ mail -> Puerto      465 ;
        
        $ mail -> setFrom ( 'info@example.com' 'CodexWorld' );
        $ mail -> addReplyTo ( 'info@example.com' 'CodexWorld' );
        
        // Agregar un destinatario
         $ mail -> addAddress ( 'john.doe@gmail.com' );
        
        // Añadir cc o bcc 
         $ mail -> addCC ( 'cc@example.com' );
        $ mail -> addBCC ( 'bcc@example.com' );
        
        // Asunto del
         correo electrónico $ mail -> Asunto  'Enviar correo electrónico a través de SMTP usando PHPMailer en CodeIgniter' ;
        
        // Establecer formato de correo electrónico a HTML
         $ mail -> isHTML ( true );
        
        // Contenido del cuerpo del correo electrónico
         $ mailContent  "<h1> Enviar correo electrónico HTML utilizando SMTP en CodeIgniter </h1>
            <p> Este es un correo de prueba que se envía mediante el servidor de correo SMTP con PHPMailer. </p> " ;
         $ mail -> Body  $ mailContent ;
        
        // Enviar correo electrónico
         si (! $ Mail -> enviar ()) {
            echo  'No se pudo enviar el mensaje'. ;
            echo  'Error del remitente:'  $ mail -> ErrorInfo ;
        }más{
            echo  'El mensaje ha sido enviado' ;
        }
    }
    
}

Enviar correo electrónico con Gmail SMTP usando PHPMailer en CodeIgniter

Puede usar Gmail SMTP para enviar correos electrónicos con PHPMailer en CodeIgniter. Antes de comenzar con Gmail SMTP, se necesitan algunos cambios en la configuración de su cuenta de Google para usar Gmail SMTP.
  • Inicie sesión en su cuenta de Google y vaya a la página Mi cuenta .
  • Haga clic en el enlace Iniciar sesión en Google en la sección Inicio de sesión y seguridad .
    enviar correo electrónico php gmail smtp account account settings codexworld
  • Desplácese hasta la sección Contraseña y método de inicio de sesión y desactive la verificación de 2 pasos .
    enviar-email-php-gmail-smtp-off-2-step-verificación-codexworld
  • Desplácese hacia abajo hasta la sección Aplicaciones con acceso a la cuenta y active Permitir aplicaciones menos seguras .
    enviar correo electrónico php gmail smtp-allow-less-secure-apps-codexworld
¡Estás listo! Ahora Google le permitirá usar Gmail SMTP para enviar correos electrónicos desde el script PHP de su aplicación CodeIgniter.
Especifique la dirección de correo electrónico de su cuenta de Gmail como nombre de usuario ( $mail->Username), contraseña ( $mail->Password), host SMTP y puerto.
// configuración SMTP
 $ mail -> isSMTP ();
$ mail -> Host  'smtp.gmail.com' ;
$ mail -> SMTPAuth  true ;
$ mail -> Nombre de usuario  'codexworld@gmail.com' ;
$ mail -> Contraseña  '********' ;
$ mail -> SMTPSecure  'tls' ;
$ mail -> Puerto  587 ;

Acerca de: Programator

Somos Instinto Programador

0 comentarios:

Publicar un comentario

Dejanos tu comentario para seguir mejorando!

Con tecnología de Blogger.