Send HTML Mail With PHP

Sending html email in php is extremely easy. All you have to do is call the “mail” function with some extra header.

Have a look on example:

<?php
 //define the receiver of the email
 $to = 'youraddress@example.com';

 //define the subject of the email
 $subject = 'Test HTML email';

 //create a boundary string. It must be unique
 //so we use the MD5 algorithm to generate a random hash
 $random_hash = md5(date('r', time()));
 //define the headers we want passed. Note that they are separated with rn
 $headers = "From: webmaster@example.comrnReply-To: webmaster@example.com";

 //add boundary string and mime type specification
 $headers .= "rnContent-Type: multipart/alternative; boundary="PHP-alt-".$random_hash.""";

 //define the body of the message.
 ob_start(); //Turn on output buffering
 Content-Type: text/html; charset="iso-8859-1"
 Content-Transfer-Encoding: 7bit

 <h2>Hello World!</h2>
 <p>This is something with <b>HTML</b> formatting.</p> 

 echo $random_hash;

 //copy current buffer contents into $message variable and delete current output buffer
 $message = ob_get_clean();

 //send the email
 $mail_sent = @mail( $to, $subject, $message, $headers );

 //if the message is sent successfully print "Mail sent". Otherwise print "Mail failed"
 echo $mail_sent ? "Mail sent" : "Mail failed";
 ?>

Permanent link to this article: https://blog.openshell.in/2010/11/send-html-mail-with-php/

Leave a Reply

Your email address will not be published.