Membuat fitur kirim email dengan codeigniter dan phpmailer

Membuat fitur kirim email dengan codeigniter 3.0 dan phpmailer
Membuat fitur kirim email dengan codeigniter dan phpmailer - Hello, postingan ini merupakan postingan perbaikan dari artikel sebelumnya. Dikarenakan artikel sebelumnya banyak yang komplen karena banyak errornya, selain hal itu code yang di gunakan bisa di bilang sudah ketinggalan, makanya kali ini saya ingin coba meregenerasi artikel tersebut.

Postingan sebelumnya : Mengirim-email-dengan-php-codeigniter.

Spesifikasi alat-alat yang saya pakai :
  • Xampp 1.8.0 (php 5.4.4)
  • Php framework codeigniter 3.0
  • Library PhpMailer (download disini)

Library
Setelah selesai mengkonfigurasi, sekarang kita akan meletakan library Phpmailer yang sudah di download sebelumnya.
  • Pertama buka file RAR PhpMailer yang sudah di download.
phpmailer master

  • (Lihat pada gambar di atas) , Copy file class.phpmailer.php , class.smtp.php dan PHPMailerAutoload.php ke folder libraries yang ada pada CI di direktori application/libraries .Untuk lebih jelas lihat gambar di bawah.
libraries


Controllers
Untuk sample, silahkan salin function di bawah ini


public function mailku() {
require_once(APPPATH.'libraries/PHPMailerAutoload.php');

$mail = new PHPMailer;

$mail->isSMTP();
$mail->Host = 'mail.domain.com'; //nama "domain" ganti sesuai nama domain anda. misal domain anda satuan.com maka bentuk host mailnya adalah mail.satuan.com
$mail->SMTPAuth = true;
$mail->Username = 'email@domain.com'; //email dari domain anda, untuk cara pembuatan email akan di bahas di bawah
$mail->Password = 'sangat rahasia'; //masukan kata sandi
$mail->Port = 587; //port tidak usah di ubah, biarkan 587

$mail->setFrom('email@domain.com', 'xyz'); //email pengirim
$mail->addAddress('penerima@gmail.com', 'penerima'); //email penerima
$mail->addReplyTo('apa@gmail.com', 'apa');
$mail->isHTML(true);

///atur pesan email disini
$mail->Subject = 'Here is the subject';
$mail->Body = 'This is the HTML message body in bold!';
$mail->AltBody = 'This is the body in plain text for non-HTML mail clients';

if(!$mail->send()) {
echo 'Message could not be sent.';
echo 'Mailer Error: ' . $mail->ErrorInfo;
} else {
echo 'Message has been sent';
}
}
Untuk keterangan sudah saya sertakan pada sample function di atas

Cara Membuat Email Di Cpanel

  • Login ke cpanel
  • Masuk ke menu account

  • Isi nama email dan password

  • Klik Create Email

Note : Tidak akan bisa jalan jika di jalankan di localhost, test di server langsung. JIka sudah di test, jangan lupa cek di spam kalau di inbox tidak ada.

Pengaturan untuk kamu yang ingin menggunakan smtp google:

$mail->isSMTP();
$mail->Host = 'smtp.gmail.com';
$mail->SMTPAuth = true;
$mail->Username = 'kamu@gmail.com';
$mail->Password = 'abcdefg'; //masukan kata sandi

$mail->SMTPSecure = 'TLS';
$mail->Port = 587; //port tidak usah di ubah, biarkan 587

$mail->setFrom('test@haha.com', 'xyz'); //email pengirim
$mail->addAddress('kamu@gmail.com', 'penerima'); //email penerima
$mail->addReplyTo('dia@gmail.com', 'apa');
$mail->isHTML(true);


$mail->Subject = 'Here is the subject';
$mail->Body = 'This is the HTML message body in bold!';
$mail->AltBody = 'This is the body in plain text for non-HTML mail clients';

if(!$mail->send())
{
echo 'Message could not be sent.';
echo 'Mailer Error: ' . $mail->ErrorInfo;
}
else
{
echo 'Message has been sent';
}
LihatTutupKomentar