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

100+ Essential Windows Commands You Can’t Ignore

Windows may look like a point-and-click operating system, but under the hood, commands still do a lot of the heavy…

2 days ago

YouTube Shorts for Beginners: Step-by-Step Guide (2026)

YouTube Shorts are short-form vertical videos designed for quick consumption, typically lasting up to 60 seconds. In 2026, they’ve become…

6 days ago

YouTube SEO Secrets That Actually Work in 2026

YouTube SEO Secrets That Actually Work in 2026 YouTube SEO 2026 YouTube SEO Secrets That Actually Work in 2026 If…

2 weeks ago

How Small Businesses Can Sell Products Using YouTube Live?

Live video commerce is transforming how small businesses sell products online. Instead of relying only on static product pages or…

3 weeks ago

How to Choose the Right Digital Marketing Agency: 15 Smart Questions

Digital marketing directly impacts revenue, brand positioning, and customer acquisition cost. Choosing the wrong agency can result in wasted budgets,…

2 months ago