PHP code to send email using SMTP

SMTP stands for Simple Mail Transfer Protocol. SMTP is a TCP/IP protocol of internet standard for electronic mail transmission from one user to another. In this, mail is pushed to the destination mail server or either POP or IMAP are used to retrieve the mail. For this, we need SMTP Server details HOSTNAME, USERNAME, PASSWORD and PORT NUMBER.

Send email using SMTP

To send email using SMTP Server in PHP, we are using PHPMailer Library. So, we need to download and include the PHPMailer library in mail sending script.





Click on the link below to download the PHP mailer class from github and include this in your script.
Download class.phpmailer.php


This library needs various configuration options to configure and customize the email sending functionality as per your requirements. By using this, we can send a text or HTML email with single or multiple attachments. Let's create a PHP file and copy and paste this code. Make sure to place the downloaded PHPMailer library file in the same directory and call the php file in your browser to send mail.

<?php 
     include 'class.phpmailer.php';
     $mail = new PHPMailer();
     $mail->CharSet =  "utf-8";
     $mail->IsSMTP();
     $mail->SMTPAuth = true;
     $mail->Host = 'HOST_NAME';
     $mail->Username = 'USER_NAME';
     $mail->Password = 'PASSWORD';
     $mail->Port = 'PORT';
     $mail->setFrom(This email address is being protected from spambots. You need JavaScript enabled to view it.', 'Your Name');
     $mail->AddAddress(This email address is being protected from spambots. You need JavaScript enabled to view it.', 'To Name');
     $mail->addCC(This email address is being protected from spambots. You need JavaScript enabled to view it.');
     $mail->addBCC(This email address is being protected from spambots. You need JavaScript enabled to view it.');
 
     $mail->Subject  =  'Test Subject';
     $mail->IsHTML(true); 
     $mail->Body    = 'Your Message Body';
     if ($mail->send()) {
          echo "Message sent!";
     } else {
         echo "Error: " . $mail->ErrorInfo;
     }
?>

In this script, we have included the PHPMailer class first and then created the object of PHPMailer class. The IsSMTP() function tells that we are using SMTP to send mail. You have to change the HOST_NAME, USER_NAME, PASSWORD and PORT NUMBER. Write the sender email address and name in setFrom() and recipient address in AddAddress(). The IsHTML() function is used to set the email format to HTML.





Related Articles

Preventing Cross Site Request Forgeries(CSRF) in PHP
PHP code to send email using SMTP
Simple pagination in PHP
Simple PHP File Cache
PHP Connection and File Handling on FTP Server
Sending form data to an email using PHP
Recover forgot password using PHP and MySQL
How to display PDF file in PHP from database






Read more articles


General Knowledge



Learn Popular Language