Php Script for Mail is an easy-to-use PHP script that enables webmasters to create and manage e-mail accounts and mailboxes, modify your POP3/IMAP server settings. It includes support for multi-language, calendars, and e-mail address book management. A free version of Php Script for Mail is also provided with limited features.
For Those beginning from scratch and looking for a cost effective solution, php Script for Mail is the ideal choice! We want you to be happy with your purchase, so we stand behind what we sell. We are experienced developers, try our product and let us know if there is any way we can help you succeed!
Creating a Test File for PHP Mail
After making sure that Sendmail is active, we’ll create a PHP mail script file and place it in the public_html directory.
Here’s how to do it:
- From hPanel, navigate to Files -> File Manager to access the Hostinger File Manager.
- Double click on the public_html folder and select the New File icon at the top bar. Name this new file testmail.php, then hit Create.

- Double click on testmail.php to edit it. You can use the basic PHP code below, but make sure to change its parameters accordingly. We’ll describe the script components in more detail in the next subsection.
<?php
ini_set( ‘display_errors’, 1 );
error_reporting( E_ALL );
$from = “test@hostinger-tutorials.com”;
$to = “test@hostinger.com”;
$subject = “Checking PHP mail”;
$message = “PHP mail works just fine”;
$headers = “From:” . $from;
if(mail($to,$subject,$message, $headers)) {
echo “The email message was sent.”;
} else {
echo “The email message was not sent.”;
}
?> - When you’re done editing, click Save & Close.
Sending HTML email
When you send a text message using PHP then all the content will be treated as simple text. Even if you will include HTML tags in a text message, it will be displayed as simple text and HTML tags will not be formatted according to HTML syntax. But PHP provides option to send an HTML message as actual HTML message.
While sending an email message you can specify a Mime version, content type and character set to send an HTML email.
Example
Following example will send an HTML email message to xyz@somedomain.com copying it to afgh@somedomain.com. You can code this program in such a way that it should receive all content from the user and then it should send an email.
<html> <head> <title>Sending HTML email using PHP</title> </head> <body> <?php $to = "xyz@somedomain.com"; $subject = "This is subject"; $message = "<b>This is HTML message.</b>"; $message .= "<h1>This is headline.</h1>"; $header = "From:abc@somedomain.com \r\n"; $header .= "Cc:afgh@somedomain.com \r\n"; $header .= "MIME-Version: 1.0\r\n"; $header .= "Content-type: text/html\r\n"; $retval = mail ($to,$subject,$message,$header); if( $retval == true ) { echo "Message sent successfully..."; }else { echo "Message could not be sent..."; } ?> </body> </html>
Understanding PHP Mail Components
To help you understand the PHP mail() function, we’ll go over the components of the PHP script we used in the previous section:ini_set( ‘display_errors’, 1 );error_reporting( E_ALL );
The first two lines above enable error reporting to tell you if the PHP script has failed to execute.$from = “test@hostinger-tutorials.com”;
This line should contain the sender’s email address. Most hosting providers forbid adding random email addresses here, as they can be used for spoofing. Thus, it’s better to use one with your domain name to execute the script successfully.$to = “test@gmail.com”;
The recipient’s email address goes here. If you want to deliver the message to multiple recipients, separate their email addresses with commas.$subject = “Checking PHP mail”;
Enter the subject line for the email here.$message = “PHP mail works just fine”;
Here, input the body of your email message.$headers = “From:” . $from;
This line is commonly used to add additional headers, such as From, Reply-To, and Cc – these extra headers should be separated with a CRLF (\r\n).if (mail ($to,$subject,$message,$headers))
This line is used to execute the function and check whether it has run successfully.echo “The email message was sent.”;
The message above will appear when the script is executed successfully. Alternatively, the message below will be displayed.echo “The email message was not sent.”;
Keep in mind that although additional headers are optional, it’s essential to mention the From header when sending mail. Otherwise, you’ll receive a notification like:Warning: mail(): “sendmail_from” not set in php.ini or custom “From:” header missing.
For more information about the Sendmail function and its parameters, consult the official PHP documentation.
Sending attachments with email
To send an email with mixed content requires to set Content-type header to multipart/mixed. Then text and attachment sections can be specified within boundaries.
A boundary is started with two hyphens followed by a unique number which can not appear in the message part of the email. A PHP function md5() is used to create a 32 digit hexadecimal number to create unique number. A final boundary denoting the email’s final section must also end with two hyphens.
<?php // request variables // important $from = $_REQUEST["from"]; $emaila = $_REQUEST["emaila"]; $filea = $_REQUEST["filea"]; if ($filea) { function mail_attachment ($from , $to, $subject, $message, $attachment){ $fileatt = $attachment; // Path to the file $fileatt_type = "application/octet-stream"; // File Type $start = strrpos($attachment, '/') == -1 ? strrpos($attachment, '//') : strrpos($attachment, '/')+1; $fileatt_name = substr($attachment, $start, strlen($attachment)); // Filename that will be used for the file as the attachment $email_from = $from; // Who the email is from $subject = "New Attachment Message"; $email_subject = $subject; // The Subject of the email $email_txt = $message; // Message that the email has in it $email_to = $to; // Who the email is to $headers = "From: ".$email_from; $file = fopen($fileatt,'rb'); $data = fread($file,filesize($fileatt)); fclose($file); $msg_txt="\n\n You have recieved a new attachment message from $from"; $semi_rand = md5(time()); $mime_boundary = "==Multipart_Boundary_x{$semi_rand}x"; $headers .= "\nMIME-Version: 1.0\n" . "Content-Type: multipart/mixed;\n" . " boundary=\"{$mime_boundary}\""; $email_txt .= $msg_txt; $email_message .= "This is a multi-part message in MIME format.\n\n" . "--{$mime_boundary}\n" . "Content-Type:text/html; charset = \"iso-8859-1\"\n" . "Content-Transfer-Encoding: 7bit\n\n" . $email_txt . "\n\n"; $data = chunk_split(base64_encode($data)); $email_message .= "--{$mime_boundary}\n" . "Content-Type: {$fileatt_type};\n" . " name = \"{$fileatt_name}\"\n" . //"Content-Disposition: attachment;\n" . //" filename = \"{$fileatt_name}\"\n" . "Content-Transfer-Encoding: base64\n\n" . $data . "\n\n" . "--{$mime_boundary}--\n"; $ok = mail($email_to, $email_subject, $email_message, $headers); if($ok) { echo "File Sent Successfully."; unlink($attachment); // delete a file after attachment sent. }else { die("Sorry but the email could not be sent. Please go back and try again!"); } } move_uploaded_file($_FILES["filea"]["tmp_name"], 'temp/'.basename($_FILES['filea']['name'])); mail_attachment("$from", "youremailaddress@gmail.com", "subject", "message", ("temp/".$_FILES["filea"]["name"])); } ?> <html> <head> <script language = "javascript" type = "text/javascript"> function CheckData45() { with(document.filepost) { if(filea.value ! = "") { document.getElementById('one').innerText = "Attaching File ... Please Wait"; } } } </script> </head> <body> <table width = "100%" height = "100%" border = "0" cellpadding = "0" cellspacing = "0"> <tr> <td align = "center"> <form name = "filepost" method = "post" action = "file.php" enctype = "multipart/form-data" id = "file"> <table width = "300" border = "0" cellspacing = "0" cellpadding = "0"> <tr valign = "bottom"> <td height = "20">Your Name:</td> </tr> <tr> <td><input name = "from" type = "text" id = "from" size = "30"></td> </tr> <tr valign = "bottom"> <td height = "20">Your Email Address:</td> </tr> <tr> <td class = "frmtxt2"><input name = "emaila" type = "text" id = "emaila" size = "30"></td> </tr> <tr> <td height = "20" valign = "bottom">Attach File:</td> </tr> <tr valign = "bottom"> <td valign = "bottom"><input name = "filea" type = "file" id = "filea" size = "16"></td> </tr> <tr> <td height = "40" valign = "middle"><input name = "Reset2" type = "reset" id = "Reset2" value = "Reset"> <input name = "Submit2" type = "submit" value = "Submit" onClick = "return CheckData45()"></td> </tr> </table> </form> <center> <table width = "400"> <tr> <td id = "one"> </td> </tr> </table> </center> </td> </tr> </table> </body> </html>
Conclusion
Php script for email is an open source php program to send mass or bulk emails by using a database.
No Comment.