You are here: Portal Home > Knowledgebase > Scripting > PHP Mail Script with SMTP Authentication
Please Login

PHP Mail Script with SMTP Authentication

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

 

 

<?php
//new function

$to = "to@fast2host.com";
$nameto = "Who To";
$from = "from@fast2host.com";
$namefrom = "Who From";
$subject = "Hello World Again!";
$message = "World, Hello!";
authSendEmail($from, $namefrom, $to, $nameto, $subject, $message);
?>

<?php
/* * * * * * * * * * * * * * 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.YOUR-DOMAIN.com";
$port = "25";
$timeout = "30";
$username = "your-emaill@domain.com";
$password = "Email password";
$localhost = "mail.YOUR-DOMAIN.com";
$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";
}
?>



Was this answer helpful?

Add to Favourites Add to Favourites

Print this Article Print this Article

Also Read
CDO Sending email script (Views: 2293)

Client Login

best hosting
Remember Me  

Search

uk web hosting

managed server
 
All Content © 2000-2011 Fast2host Limited. All Rights Reserved.
UK Company Registration Number: 05348700VAT Number: GB 884 9830 61 — BGP4 Network AS48825

Fast2host provides the best in hosting. Should you find that our services do not meet your specifications, we offer a full refund, providing your service cancellation is made within 30 days of opening your account. (The 30 day guarantee applies to Shared Hosting Solutions, for other solution guarantees please see 30 Day Money Back Guarantee.)

With the latest cloud VPS technology and infrastructure located in the UK, within our own datacenter, we can help your business thrive on the internet. Fast2host can setup and host sites whatever your hosting needs. Whether you're just establishing a presence on the internet, or you want to manage, maintain and monitor an eBusiness web hosting solution, we can help.

This is what makes Fast2host different, we provide a unique web hosting service for each client, including adult web hosting, providing close contact and support to create 100% satisfaction. We are here to help and support you throughout.

A dedicated server can be rebooted remotely. Cloud vps hosting allows you to reinstall OS instantly. Cpanel hosting you can restore files yourself. 100% White Label Reselling hosting you can make money today.