Send Email from PHP Script with SMTP Authentication


This article demonstrates the method for using PHP and SMTP Authentication to send mail. Below is example code.

Make sure you change the following variables:

  • from: the email address from which you want the message to be sent.
  • to: the recipient's email address and name. host: your outgoing SMTP server name.</li/>
  • username: the SMTP user name (typically the same as the user name used to retrieve mail).
  • password: the password for SMTP authentication.

Sending Mail from PHP Using SMTP Authentication - Example

<?php 
 require_once "check_the_correct_path_below/Mail.php";
 $from = "Sandra Sender <sender@example.com>";
 $to = "Ramona Recipient <recipient@example.com>";
 $subject = "Hi!";
 $body = "Hi,\n\nHow are you?";
 $host = "mail.example.com";
 $username = "smtp_username";
 $password = "smtp_password";
 $headers = array ('From' => $from,
   'To' => $to,
   'Subject' => $subject);
 $smtp = Mail::factory('smtp',
   array ('host' => $host,
     'auth' => true,
     'username' => $username,
     'password' => $password));
 $mail = $smtp->send($to, $headers, $body);
 if (PEAR::isError($mail)) {
   echo("<p>" . $mail->getMessage() . "</p>");
  } else {
   echo("<p>Message successfully sent!</p>");
  }
 ?

Sending Mail from PHP Using SMTP Authentication and SSL Encryption - Example

<?php
 require_once "check_the_correct_path_above/Mail.php";
 $from = "Sandra Sender <sender@example.com>";
 $to = "Ramona Recipient <recipient@example.com>";
 $subject = "Hi!";
 $body = "Hi,\n\nHow are you?";
 $host = "ssl://mail.example.com";
 $port = "465";
 $username = "smtp_username";
 $password = "smtp_password";
 $headers = array ('From' => $from,
   'To' => $to,
   'Subject' => $subject);
 $smtp = Mail::factory('smtp',
   array ('host' => $host,
     'port' => $port,
     'auth' => true,
     'username' => $username,
     'password' => $password));
 $mail = $smtp->send($to, $headers, $body);
 if (PEAR::isError($mail)) {
   echo("
" . $mail->getMessage() . "
");
  } else {
   echo("

Message successfully sent!
");
  }
 ?
  • email tutorial, php
  • 4 Users Found This Useful
Was this answer helpful?

Related Articles

Create Spam Filters for Mailing Lists

This document explains how to create mail filter rules in cPanel's Mailing Lists interface (Home...

Video: Create Email Filter in cPanel

This video tutorial provides Step-by-Step instructions for creating an email filter in cPanel...

Video: Using Webmail in cPanel

This video tutorial provides Step-by-Step instructions for using Webmail in cPanel Shared Hosting...

Video: Create Email Address in cPanel

This video tutorial demonstrates how to create an email address using cPanel Shared Hosting...

Video: Setup Email Autoresponder in cPanel

View the Step-by-Step Tutorial for Setting up an Email Autoresponder in cPanel Shared Hosting.