Step 1: Download PHP mailer from the link.
Step 2: Then store it in thirdparty folder in application
Step 3: Then create a file name as phpmailer.php in application/libraries/phpmailer.php.
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
class PHPMailer_Lib
{
public function __construct(){
log_message('Debug', 'PHPMailer class is loaded.');
}
public function load(){
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 = new PHPMailer;
return $mail;
}
}
tep 4: Then create the controller file.
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Email extends CI_Controller{
function __construct(){
parent::__construct();
}
function send(){
/* Load PHPMailer library */
$this->load->library('phpmailer');
/* PHPMailer object */
$mail = $this->phpmailer->load();
/* SMTP configuration */
$mail->isSMTP();
$mail->Host = 'smtp.example.com';
$mail->SMTPAuth = true;
$mail->Username = 'user@example.com';
$mail->Password = '********';
$mail->SMTPSecure = 'ssl';
$mail->Port = 465;
$mail->setFrom('info@example.com', 'CodexWorld');
$mail->addReplyTo('info@example.com', 'CodexWorld');
/* Add a recipient */
$mail->addAddress('divyasundarsahu@gmail.com');
/* Add cc or bcc */
$mail->addCC('cc@example.com');
$mail->addBCC('bcc@example.com');
/* Email subject */
$mail->Subject = 'Send Email via SMTP using PHPMailer in CodeIgniter';
/* Set email format to HTML */
$mail->isHTML(true);
/* Email body content */
$mailContent = "<h1>Send HTML Email using SMTP in CodeIgniter</h1>
<p>This is a test email sending using SMTP mail server with PHPMailer.</p>";
$mail->Body = $mailContent;
/* Send email */
if(!$mail->send()){
echo 'Mail could not be sent.';
echo 'Mailer Error: ' . $mail->ErrorInfo;
}else{
echo 'Mail has been sent';
}
}
}