Banyak artikel yang menjelaskan tentang penggunaan class PHPMailer untuk mengirim email dengan menggunakan CodeIgniter, seperi halnya artikel email CodeIgniter. Setelah saya praktekkan, ternyata cara tersebut hanya berlaku ketika menggunakan CodeIgniter versi 1, alasanya adalah cara tersebut diatas menggunakan fasilitas plugin yang dimana nantinya folder PHPMailer tersebut akan ditampilkan.
Tapi ketika menggunakan CodeIgniter versi 2.0 ke atas, akan mengalami kesulitan karena pada CodeIgniter versi ini tidak terdapat folder plugin, sehingga cara diatas tidak bisa digunakan.
Tapi jangan kawatir, setelah menjelajah mbah google, akhirnya saya menemukan cara yang efektif dan terbukti berhasil saya praktekkan.
Masih menggunakan Source PHPMailer pada cara pertama di atas, tetapi peletakan file-file tersebut pada folder libraries pada folder application. Kemudian hapus file phpmailer_pi.php, kemudian buat file baru dengan nama My_PHPMailer.php dengan isi:
<?php
if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class My_PHPMailer {
public function My_PHPMailer()
{
require_once('PHPMailer/class.phpmailer.php');
}
}
?>
Kemudian pada Controller:
$this->load->library('My_PHPMailer');
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->SMTPAuth = true;
$mail->SMTPSecure = "tls";
$mail->Host = "smtp.gmail.com";
$mail->Port = 587;
$mail->Username = "nama email@gmail.com";
$mail->Password = "password email";
$mail->SetFrom("email pengirim", "nama pengirim");
$mail->AddReplyTo("email pengirim", "nama pengirim");
$mail->Subject = "Keterangan";
$mail->MsgHTML("Kiriman email saya");
$mail->AddAddress("email tujuan", "nama tujuan");
if($mail->Send())
{
echo "berhasil";
} else {
echo "gagal";
}
Mungkin agak panjang bila dibandingkan dengan ketika menggunakan cara awal tadi, tapi ketika menggunakan CodeIgniter versi 2.0 keatas, cara ini sudah terbukti berhasil. Semoga bermanfaat