Categories: Hostripples Featured

Sample PHP Mail Script with SMTP Authentication

The below email script is for PHP emailing with SMTP authentication.

//new function

$to = “you@your-domainname.com”;
$nameto = “Who To”;
$from = “script@your-domainname.com”;
$namefrom = “Who From”;
$subject = “Hello World Again!”;
$message = “World, Hello!”;
authSendEmail($from, $namefrom, $to, $nameto, $subject, $message);
?>


/* * * * * * * * * * * * * * SEND EMAIL FUNCTIONS * * * * * * * * * * * * * */

//This will send an email using auth smtp and output a log array
//logArray – connection,

function authSendEmail($from, $namefrom, $to, $nameto, $subject, $message)
{
//SMTP + SERVER DETAILS
/* * * * CONFIGURATION START * * * */
$smtpServer = “mail.ukdns.biz”;
$port = “25”;
$timeout = “30”;
$username = “your-email-address@domain.com”;
$password = “Your-POP3-Password”;
$localhost = “mail.ukdns.biz”;
$newLine = “\r\n”;
/* * * * CONFIGURATION END * * * * */

//Connect to the host on the specified port
$smtpConnect = fsockopen($smtpServer, $port, $errno, $errstr, $timeout);
$smtpResponse = fgets($smtpConnect, 515);
if(empty($smtpConnect))
{
$output = “Failed to connect: $smtpResponse”;
return $output;
}
else
{
$logArray[‘connection’] = “Connected: $smtpResponse”;
}

//Request Auth Login
fputs($smtpConnect,”AUTH LOGIN” . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray[‘authrequest’] = “$smtpResponse”;

//Send username
fputs($smtpConnect, base64_encode($username) . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray[‘authusername’] = “$smtpResponse”;

//Send password
fputs($smtpConnect, base64_encode($password) . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray[‘authpassword’] = “$smtpResponse”;

//Say Hello to SMTP
fputs($smtpConnect, “HELO $localhost” . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray[‘heloresponse’] = “$smtpResponse”;

//Email From
fputs($smtpConnect, “MAIL FROM: $from” . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray[‘mailfromresponse’] = “$smtpResponse”;

//Email To
fputs($smtpConnect, “RCPT TO: $to” . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray[‘mailtoresponse’] = “$smtpResponse”;

//The Email
fputs($smtpConnect, “DATA” . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray[‘data1response’] = “$smtpResponse”;

//Construct Headers
$headers = “MIME-Version: 1.0” . $newLine;
$headers .= “Content-type: text/html; charset=iso-8859-1” . $newLine;
$headers .= “To: $nameto <$to>” . $newLine;
$headers .= “From: $namefrom <$from>” . $newLine;

fputs($smtpConnect, “To: $to\nFrom: $from\nSubject: $subject\n$headers\n\n$message\n.\n”);
$smtpResponse = fgets($smtpConnect, 515);
$logArray[‘data2response’] = “$smtpResponse”;

// Say Bye to SMTP
fputs($smtpConnect,”QUIT” . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray[‘quitresponse’] = “$smtpResponse”;
}
?>

 

 


HR-ADMIN

Recent Posts

This Diwali, Give Your Website the Glow It Deserves — Host Smarter,Rank Higher

Every Diwali Brings New Light, New Beginnings, and New Opportunities In today’s digital world, your website is the Diya that…

2 weeks ago

What Are the Best WordPress Photo Gallery Plugins for 2026?

Photography is not just about taking pictures—it’s about presenting them beautifully. For photographers and creative bloggers, WordPress photo gallery plugins…

4 weeks ago

How Can You Prepare Your Ecommerce Site/blog for Festivals?

Festivals are more than cultural celebrations—they’re golden opportunities for e-commerce stores and bloggers to attract, engage, and convert audiences. During…

1 month ago

Shared Hosting: Migrating Your Site Seamlessly

If you’re new to web hosting, the idea of moving your website from one provider to another might sound intimidating.…

2 months ago

Top 15 WooCommerce Plugins to Power Your eCommerce Store in 2025

WooCommerce powers over 5 million online stores, and its true potential comes alive with plugins that enhance functionality. The right…

2 months ago