email in CodeIgniter

6 min read

A website may need to send an email to interact with its user, either to confirm their authenticity, help them retrieve their password, inform them about any terms or policy changes, or plainly for marketing purposes.

CodeIgniter offers a built-in email library that equips your web application for sending emails. Here we will teach you how to send emails using the SMTP protocol. 

Step 1:

<?php $config=array( ‘protocol’=> ‘smtp’, ‘smtp_host‘=> ‘smtp.example.com’, ‘smtp_port‘=> 465, ‘smtp_user‘=> ‘[email protected]‘, ‘smtp_pass‘=> ‘******’, ‘smtp_crypto‘=> ‘ssl‘, ‘mailtype‘=> ‘text’, ‘smtp_timeout‘=> ‘4’, ‘charset’=> ‘iso-8859-1’, ‘wordwrap‘=> TRUE ); ?> 

Step 2:

Create an EmailController.php file inside the controller directory and add the following code. 

<?php class EmailController extends CI_Controller{function send(){$this->load->config(’email’); $this->load->library(’email’); $from=$this->config->item(‘smtp_user‘); $to=‘[email protected]‘; $subject=‘subject’; $message=‘message’; $this->email->from($from); $this->email->to($to); $this->email->subject($subject); $this->email->message($message); if ($this->email->send()){echo ‘Email has been sent successfully’;}else{show_error($this->email->print_debugger());}}}?> 

Step 3:

Now your work is done. To check your code, send a test mail: 

Run http://localhost/EmailController/send in your browser.

Conclusion

After reading this post, implementing emailing functionality should be super easy for you. Let me know if you have any questions regarding the article in the comment section below. Share this post with your friends and social media followers.

If you are looking for a software firm to create your business website or mobile app, your search ends here. We build affordable and robust software solutions for businesses to digitally thrive on. Contact us to get a quote. You can mail us at [email protected] or WhatsApp us at +91 95 37 84 

"Have WordPress project in mind?

Explore our work and and get in touch to make it happen!"