I have a contact form script and when the user submits it, they get an email and I get one. But there’s a problem with the “message” textarea in the HTML email. It puts it all in one line.
See how I type it out:

And then in the email sent to me (HTML) its all in one line:

As you can see it is all in one line. How can I get it to not be in this line?
This is my code:
<?php
// load the variables form address bar
$subject = $_POST["subject"];
$message = $_POST["message"];
$from = $_POST["from"];
$name = $_POST["name"];
$verif_box = $_POST["verif_box"];
// remove the backslashes that normally appear when entering " or '
$message = stripslashes($message);
$subject = stripslashes($subject);
$from = stripslashes($from);
$name = stripslashes($name);
$emailContent = "Hello Nathan,
".$name." is trying to contact WeeBuild Support. Here's what they submitted:
<br /><br />
<div style='background-color:#ccc;padding:10px;border:1px solid grey;'>
Name: <strong>".$name."</strong>
<br /><br />
Email: <strong>".$from."</strong>
<br /><br />
Subject: <strong>".$subject."</strong>
<br /><br />
Message:
<br /><br />
<strong>".$message."</strong>
<br /><br /><br />
Their IP Address: <strong>".$_SERVER['REMOTE_ADDR']."</strong>
</div>
<br /><br />
To email them back, simply reply to this message.";
$emailContents = "Hello ".$name.",
Thank you for contacting WeeBuild Support! This email is to let you know that we have received your support request and that we will reply soon.
For your record, here is what you submitted:
-----------------------------------------------------------------------------
Your Name: ".$name."
Your Email: ".$from."
Subject: ".$subject."
Message:
".$message."
-----------------------------------------------------------------------------
In the meanwhile, make sure to add support@weebuild.biz to your contact list/safe senders list so our emails don't end up in your junk folder.
We will be with you shortly!
Kind regards,
WeeBuild Support Team
www.WeeBuild.biz";
$emailContent = stripslashes($emailContent);
$emailContents = stripslashes($emailContents);
$headers = "From: " . $from . "\r\n";
$headers .= "Reply-To: ". $from . "\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";
// check to see if verificaton code was correct
if(md5($verif_box).'a4xn' == $_COOKIE['tntcon']){
// if verification code was correct send the message and show this page
mail("nathan@weebuild.biz", 'WeeBuild Contact Form: "'.$subject.'"', $emailContent, $headers);
mail($from, 'Thank you for contacting WeeBuild Support!', $emailContents, "From: support@weebuild.biz");
// delete the cookie so it cannot sent again by refreshing this page
setcookie('tntcon','');
} else if(isset($message) and $message!=""){
// if verification code was incorrect then return to contact page and show error
header("Location: index.php?name=$name&subject=$subject&from=$from&message=".urlencode($message)."&wrong_code=true");
exit;
} else {
echo "<!DOCTYPE HTML PUBLIC \"-//IETF//DTD HTML 2.0//EN\">
<html><head>
<title>Access Denied</title>
<style type=\"text/css\">
body {
font-family: Arial, sans-serif;
}
</style>
</head><body>
<h1>Access Denied</h1>
<p>This page cannot be accessed directly. The needed variables to submit were not provided.</p>
</body></html>";
exit;
}
?>
Note: $emailContent is the email that goes to me and $emailContents is the email that goes to the user.
I tried using the str_replace() and that just caused parsing problems and I could not get that to work. I’m sure I wasn’t using it right.
Can someone help me with this? Any help is highly appreciated.
use
nl2br();So edit this snippet
to