This might sound similar like previously asked questions but trust me it's not
I Was trying to send an email that uses an HTML template via PHP mail()
function from Localhost and a Hostinger Server but they created different problems.
On localhost the email was being sent as plain text although there were headers
$headers = "MIME-Version: 1.0\r\n" . "Content-Type: text/html; charset=UTF-8";
I have gone through all the similar questions in stackoverflow and tried each and every thing but I couldn't make it work. After some more research on this I found out this
I assume, that your email client is considering the smtp-server "unsafe", and hence is just going to display all the html as plaintext, rather than rendering it
Therefore I switched over my hosting and tried to do the same but this time I found that the
headers
are causing the problem. The email is not sent if theheader
variable is passed in themail()
function. I tried to concatenate the headers which didn't worked. Then I made an array of headers and joined them with phpimplode
which too didn't worked. On a similar question on stackoverflow I found that webmails mess up ifhtml, head, body
tags are used as they usexhtml
. I removed them and still no success.
I tried error reporting
too and it showed module sqlite3 already loaded
which I think is not related to mail.
Below is my code
php
<?php
$email_template = file_get_contents("path/to/my/template");
$lucky_number = rand(999999, 111111);
$email_template = str_replace("{{user}}", "User", $email_template);
$email_template = str_replace("{{lucky_number}}", $lucky_number, $email_template);
$sender = "from:iusername@host.com"; // I found that if I dont use from, my mail ends up in spam folder
$receiver = "username@host.com";
$subject = "Random Subject Name";
$headers =
"MIME-Version: 1.0\r\n" .
"Content-Type: text/html; charset=UTF-8";
if(mail($receiver, $subject, $email_template, $sender, $headers))
{
echo "Email Sent Successfully";
}
else
{
echo "Email Sending Failed";
}
P.S I can't use PHPMailer or other similar libraries