Cara mengirim email dengan Codeigniter — Mengirim email merupakan salah satu yang selalu dilakukan orang di internet. Mulai dari mengirim email untuk keperluan pekerjaan, sekedar komunikasi, bahkan untuk promosi.

Sebuah website biasanya butuh kemampuan untuk mengirim email, misalnya saja seorang penyedia saja pembuatan website. Biasanya mereka menaruh sebuah form untuk mengirim email permintaan di halaman kontak.

codeigniter email class

Codeignite email (Image: coderiddles.com)

Atau sebuah website e-commerce, ketika seseorang membeli barang biasanya banyak sekali email yang terkirim. Email biasanya akan terkirim ke admin dan juga kepada pembeli. Ketika pembeli sudah melakukan pembayaran juga email akan terkirim. Bahkan ketika sebulan setelah pembelian terkadang ada juga email masuk dari website e-commerce tersebut kepada pembeli tadi untuk menawarkan produk-produk lainnya.

Begitu pentingnya komunikasi melalui email ini bagi sebuah website.

Jika sebelumnya kita sudah pernah membahas bagaimana cara mengirim email dengan PHP, maka kali ini sesuai permintaan beberapa orang pembaca kami akan menjelaskan bagaimana mengirim email dengan menggunakan Codeigniter.

Cara mengirim email dengan Codeigniter

Mengirim email di Codeigniter jauh lebih mudah dan Anda dapat mengatur preferensinya sesuai kebutuhan Anda. Codeigniter menyediakan librari Email untuk memudahkan dalam pengiriman email di aplikasi yang Anda buat. Class email di Codeigniter menyediakan fungsi-fungsi berikut ini:

  • Multiple Protocols: Mail, Sendmail, and SMTP
  • Multiple recipients
  • CC and BCCs
  • HTML atau Plaintext email
  • Attachments
  • Word wrapping
  • Priorities
  • BCC Batch Mode, memungkinkan berkirim email ke banyak penerima.
  • Email Debugging tools

Pada tutorial kali ini, kami akan menunjukan fitur yang sering digunakan untuk berkirim email di proyek web. Pada contoh kali ini kita akan menjelaskan sedikit tentang berkirim email teks, email HTML dan email dengan lampiran. Selain itu Anda juga bisa mengatur alamat email CC dan BCC.

Untuk mengirim email di Codeigniter, pertama Anda harus load terlebih dahulu library email. Gunakan baris kode berikut ini untuk memuat library email di Codeigniter.

$this->load->library('email');

Mengirim email teks dengan Codeigniter

Untuk contoh pertama kita bisa mengirim email yang hanya berisi teks dengan codeigniter, contohnya sebagai berikut. Anda bisa taruh kode ini di controller yang Anda buat.

$this->email->to('alamat_tujuan@namadomain.com');
$this->email->from('admin@jurnalweb.com','Jurnalweb');
$this->email->subject('JUDUL EMAIL (Teks)');
$this->email->message('Isi email ditulis disini');
$this->email->send();

Mengirim email HTML dengan Codeigniter

Ada kalanya kita ingin mengirim email yang ada tag HTML nya, misalnya ketika ingin membuat tulisan tebal, heading (H1-h6), tabel, bahkan menyertakan hyperlink.

Caranya adalah sebagai berikut.

$htmlContent = '<h1>Mengirim email HTML dengan Codeigniter</h1>';
$htmlContent .= '<div>Contoh pengiriman email yang memiliki tag HTML dengan menggunakan Codeigniter</div>';
    
$config['mailtype'] = 'html';
$this->email->initialize($config);
$this->email->to('email_tujuan@namadomain.com');
$this->email->from('admin@jurnalweb.com','JurnalWeb');
$this->email->subject('Test Email (HTML)');
$this->email->message($htmlContent);
$this->email->send();

Mengirim email yang disertai file lampiran (attachement) dengan Codeigniter

Email biasanya bukan hanya berisi teks dan tag HTML, namun adakalanya kita perlu untuk menyertakan file lampiran (attachement), kita bisa menggunakan fungsi attach() di Codeigniter.

$htmlContent = '<h1>Mengirim email disertai lampiran (attachement) dengan Codeigniter</h1>';
$htmlContent .= '<div>Contoh pengiriman email yang disertai dengan file lampiran dengan menggunakan Codeigniter</div>';

$config['mailtype'] = 'html';
$this->email->initialize($config);
$this->email->to('email_tujuan@namadomain.com');
$this->email->from('admin@jurnalweb.com','JurnalWeb');
$this->email->subject('Test Email (Attachment)');
$this->email->message($htmlContent);
$this->email->attach('LOKASI_FOLDER_FILE/NAMA_FILE_attachment.pdf');
$this->email->send();

Mengirim email kebanyak orang (multiple recipients) dengan Codeigniter

Berkirim email tentu tidak hanya kepada satu orang saja, namun terkadang perlu untuk mengirim email kepada banyak orang sekaligus. Caranya mudah, tinggal ganti pada fungsi to() atau lengkapnya pada bagian $this->email->to(‘EMAIL PENERIMA’) yang awalnya seperti ini.

$this->email->to('one@example.com');

Menjadi seperti ini

$this->email->to('satu@example.com, dua@example.com, tiga@example.com');

atau seperti ini

$recipientArr = array('satu@example.com', 'dua@example.com', 'tiga@example.com');
$this->email->to($recipientArr);

Mengatur alamat CC dan BCC email dengan Codeigniter

Biasanya seorang karyawan yang mengirim email ke klien akan mengirim juga email tersebut kepada atasannya agar atasannya mengetahui. Biasanya si karyawan akan memasukan alamat email atasannya tersebut di CC atau BCC. Kita juga bisa melakukan hal tersebut di Codeigniter. Begini caranya.

$this->email->cc('satu@example.com');
$this->email->bcc('alamat_email_lain@example.com');

Itulah beberapa cara mengirim email dengan Codeigniter, Kode-kode diatas bisa Anda taruh di controller yang Anda buat.

CATATAN:

  • Jika ingin lebih dinamis, Anda bisa membuat form sesuai kebutuhan. Anda tinggal ganti variabel-variabel yang ada disitu dengan data yang Anda kirim dari form.
  • Agar email terkirim dengan benar, Anda harus menginstal email server di komputer Anda. Atau jika tidak ingin menginstal web server, Anda bisa mencoba berkirim email dengan terlebih dahulu menguploadnya ke web hosting.

Semoga berguna..