Blog

Trong các bài viết trước bạn và Công ty thiết kế website chuyên nghiệp OTVINA đã cùng nhau tìm hiểu về Flashdata trong Session của Codeigniter và 1 số thư viện khác trong Codeigniter.

Cấu hình gửi email trong Codeigniter

Cấu hình gửi email trong Codeigniter

Để tiếp tục loại series bài viết về Học Codeigniter chúng ta sẽ tiếp tục tìm hiểu về Bài 13. Gửi Email trong Codeigniter

Trong Codeigniter cung cấp cho người lập trình web/thiết kế website rất nhiều tính năng mạnh mẽ như:

  • Gửi email bằng nhiều phương thức: Mail, sendmail, SMTP
  • Hỗ trợ mã hóa TLS và SSL
  • Hỗ trợ nhiều người nhận email
  • Hỗ trợ CC và BCC
  • Hỗ trợ HTML hoặc plaintext
  • Hỗ trợ đính kèm, Word wrapping, Email debug

Trước khi bắt đầu gửi

Gọi thư viện

Tương tự như các thư viện khác trong Codeigniter, trước khi bắt đầu việc đầu tiên cần làm là gọi thư viện đó ra để sử dụng, đối với email cũng tương tự, bạn làm như sau:

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

 Cấu hình gửi email

Trước khi gửi chúng ta cần phải cấu hình 1 số thông tin: người gửi, người nhận, phương thức, tiêu đề, nội dung email,…

1. Cấu hình phương thức:

– Nếu bạn sử dụng phương thức sendmail

$config['protocol'] = 'sendmail';
$config['charset']  = 'utf-8';
$config['mailtype'] = 'html';
$config['wordwrap'] = TRUE;
 
$this->email->initialize($config);

– Nếu bạn sử dụng SMTP để gửi:

$config['protocol']     = 'smtp';
$config['smtp_host']    = ''; 
$config['smtp_user']    = '';
$config['smtp_pass']    = '';
$config['smtp_port']    = ''; 
$this->email->initialize($config);

Tiếp theo là cấu hình nội dung gửi email đi, thư viện email trong Codeigniter cung cấp 1 số phương thức để cấu hình khi gửi, bao gồm:

  • from($from,$name,$path): $from là địa chỉ email gửi, $name là tên người gửi, $path là
  • to($email); $email là địa chỉ email của người nhận, trường hợp gửi nhiều bạn có thể sử dụng 1 mảng địa chỉ email.
  • subject($title); $title là tiêu đề của email gửi đi.
  • message($message): $message là nội dung email sẽ gửi, bạn có thể gửi plaintext hoặc HTML.
  • cc($email) và bcc($email): $email được cc hoặc bcc, có thể bao gồm danh sách nhiều email như 1 mảng.
  • attach($path): $path là đường dẫn file đính kèm, trường hợp sử dụng nhiều file đính kèm thì các bạn gọi nhiều lần phương thức attach()
  • .. còn khá nhiều phương thức trong thư viện này, các bạn muốn tìm hiểu chi tiết có thể tìm hiểu tại đây.

Bắt đầu gửi email

Để bắt đầu gửi email, các bạn sử dụng phương thức send():

$this->email->send();

Một ví dụ về gửi Email trong thiết kế website sử dụng Codeigniter

$this->load->library('email');
// Cấu hình
$config['protocol'] = 'sendmail';
$config['charset'] = 'utf-8';
$config['mailtype'] = 'html';
$config['wordwrap'] = TRUE;
$this->email->initialize($config);
 
//Cấu hình người gửi
$this->email->from('vucongtinh@gmail.com', 'Vũ Công Tịnh');
//Cấu hình người nhận
$this->email->to('thietkewebsite@gmail.com');
 
$this->email->subject('Bạn cần thiết kế website chuyên nghiệp giá rẻ?');
$this->email->message('Công ty OTVINA chuyên thiết kế website công ty, bán hàng, doanh nghiệp chuyên nghiệp với chi phí thấp.');
 
//File đính kèm
$this->email->attach('/path/to/hinhanh1.jpg');
$this->email->attach('/path/to/hinhanh2.jpg');
// Bắt đầu gửi
if ( $this->email->send())
{
    //Gửi thành công
}else{
    //Gửi thất bại
}

Như vậy chúng ta đã cùng nhau tìm hiểu kiến thức cơ bản về Email trong Codeigniter, thật dễ dàng phải không nào? Từ hôm nay bạn có thể dễ dàng gửi email với thư viện email trong Codeigniter qua các phương thức bạn mong muốn.

Đừng quên like và chia để Công ty thiết kế website OTVINA tiếp tục cung cấp những kiến thức Codeigniter cũng như lập trình web nhé các bạn! <3