CodeIgniter - Mengirim Email

Mengirim email di CodeIgniter jauh lebih mudah. Anda juga mengkonfigurasi preferensi terkait email di CodeIgniter. CodeIgniter menyediakan fitur-fitur berikut untuk mengirim email -

  • Beberapa Protokol - Mail, Sendmail, dan SMTP
  • Enkripsi TLS dan SSL untuk SMTP
  • Penerima ganda
  • CC dan BCC
  • HTML atau email Plaintext
  • Attachments
  • Pembungkusan kata
  • Priorities
  • BCC Batch Mode, memungkinkan daftar email besar dipecah menjadi batch BCC kecil.
  • Alat Debugging Email

Kelas email memiliki fungsi berikut untuk mempermudah pekerjaan pengiriman email.

SN Sintaksis Parameter Kembali Jenis Pengembalian
1 dari ( $ from [, $ name = '' [, $ return_path = NULL ]])

$from( string ) - alamat email "Dari"

$name( string ) - nama tampilan "Dari"

$return_path( string ) - Alamat email opsional untuk mengalihkan email yang tidak terkirim

Contoh CI_Email (perangkaian metode) CI_Email
2 reply_to ( $ replyto [, $ name = '' ])

$replyto( string ) - Alamat email untuk balasan

$name( string ) - Nama tampilan untuk alamat email balas-ke

Contoh CI_Email (perangkaian metode) CI_Email
2 ke ( $ to )

$to( campuran ) - String yang dipisahkan koma atau serangkaian alamat email

Contoh CI_Email (perangkaian metode) CI_Email
3 cc ( $ cc )

$cc( campuran ) - String yang dipisahkan koma atau serangkaian alamat email

Contoh CI_Email (perangkaian metode) CI_Email
4 bcc ( $ bcc [, $ limit = '' ])

$bcc( campuran ) - String yang dipisahkan koma atau serangkaian alamat email

$limit( int ) - Jumlah email maksimum untuk dikirim per batch

Contoh CI_Email (perangkaian metode) CI_Email
5 subjek ( $ subject )

$subject( string ) - Baris subjek email

Contoh CI_Email (perangkaian metode) CI_Email
6 pesan ( $ body )

$body( string ) - Badan pesan email

Contoh CI_Email (perangkaian metode) CI_Email
7 set_alt_message ( $ str )

$str( string ) - Badan pesan email alternatif

Contoh CI_Email (perangkaian metode) CI_Email
8 set_header ( $ header, $ value )

$header( string ) - Nama header

$value( string ) - Nilai header

Contoh CI_Email (perangkaian metode) CI_Email
9 jelas ([ $ clear_attachments = FALSE ])

$clear_attachments( bool ) - Apakah akan menghapus lampiran atau tidak

Contoh CI_Email (perangkaian metode) CI_Email
10 kirim ([ $ auto_clear = TRUE ])

$auto_clear( bool ) - Apakah akan menghapus data pesan secara otomatis

Contoh CI_Email (perangkaian metode) CI_Email
11 lampirkan ($ filename [, $ disposition = '' [, $ newname = NULL [, $ mime = '']]])

$filename( string ) - Nama file

$disposition( string ) - 'disposition' dari lampiran. Sebagian besar klien email membuat keputusan sendiri terlepas dari spesifikasi MIME yang digunakan di sini. iana

$newname( string ) - Nama file kustom untuk digunakan dalam email

$mime( string ) - tipe MIME yang akan digunakan (berguna untuk data yang di-buffer)

Contoh CI_Email (perangkaian metode) CI_Email
12 attachment_cid ( $ filename )

$filename( string ) - Nama file lampiran yang ada

Lampiran Content-ID atau FALSE jika tidak ditemukan tali

Mengirim Email

Untuk mengirim email menggunakan CodeIgniter, pertama Anda harus memuat pustaka email menggunakan yang berikut -

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

Setelah memuat pustaka, cukup jalankan fungsi berikut untuk mengatur elemen yang diperlukan untuk mengirim email. Itufrom() fungsi digunakan untuk mengatur - dari mana email itu dikirim dan to()fungsi digunakan - kepada siapa email itu dikirim. Itusubject() dan message() fungsi digunakan untuk mengatur subjek dan pesan email.

$this->email->from('[email protected]', 'Your Name');
$this->email->to('[email protected]');
 
$this->email->subject('Email Test');
$this->email->message('Testing the email class.');

Setelah itu, jalankan file send() berfungsi seperti gambar di bawah ini untuk mengirim email.

$this->email->send();

Contoh

Buat file pengontrol Email_controller.php dan simpan di application/controller/Email_controller.php.

<?php 
   class Email_controller extends CI_Controller { 
 
      function __construct() { 
         parent::__construct(); 
         $this->load->library('session'); 
         $this->load->helper('form'); 
      } 
		
      public function index() { 
	
         $this->load->helper('form'); 
         $this->load->view('email_form'); 
      } 
  
      public function send_mail() { 
         $from_email = "[email protected]"; 
         $to_email = $this->input->post('email'); 
   
         //Load email library 
         $this->load->library('email'); 
   
         $this->email->from($from_email, 'Your Name'); 
         $this->email->to($to_email);
         $this->email->subject('Email Test'); 
         $this->email->message('Testing the email class.'); 
   
         //Send mail 
         if($this->email->send()) 
         $this->session->set_flashdata("email_sent","Email sent successfully."); 
         else 
         $this->session->set_flashdata("email_sent","Error in sending Email."); 
         $this->load->view('email_form'); 
      } 
   } 
?>

Buat file tampilan bernama email_form.php dan simpan di application/views/email_form.php

<!DOCTYPE html> 
<html lang = "en"> 

   <head> 
      <meta charset = "utf-8"> 
      <title>CodeIgniter Email Example</title> 
   </head>
	
   <body> 
      <?php 
         echo $this->session->flashdata('email_sent'); 
         echo form_open('/Email_controller/send_mail'); 
      ?> 
		
      <input type = "email" name = "email" required /> 
      <input type = "submit" value = "SEND MAIL"> 
		
      <?php 
         echo form_close(); 
      ?> 
   </body>
	
</html>

Lakukan perubahan di routes.php mengajukan application/config/routes.php dan tambahkan baris berikut di akhir file.

$route['email'] = 'Email_Controller';

Jalankan contoh di atas dengan mengunjungi tautan berikut. Ganti yoursite.com dengan URL situs Anda.

http://yoursite.com/index.php/email