Reputation: 316
I created a form for users to key in recipient, subject name, and message to send mail via phpmailer. the problem i'm facing is with the textarea in my form.
I typed this into the textarea:
Hi john,
how's your day?
regards,
your best friend
but right now, this is showing in the email:
Hi john, how's your day? regards, your best friend
any ideas on how to format it to how the user enters in the text area? my current script is just
$body= $_POST["msg"];
i read that i should use nl2br but isnt that for output? Thanks in advance
Upvotes: 0
Views: 2544
Reputation: 2183
What you will need to do is add a break for each line.
$text = trim($_POST['textareaname']); // remove the last \n or whitespace character
$text = nl2br($text); // insert <br /> before \n
If you dont like that try this:(you may need to play with it.)
//trim off excess whitespace off the whole
$text = trim($_POST['textareaname']);
//explode all separate lines into an array
$textAr = explode("\n", $text);
//trim all lines contained in the array.
$textAr = array_filter($textAr, 'trim');
$str='';
//loop through the lines
foreach($textAr as $line){
$str .= $line."</br> ";
}
Upvotes: 6