Preserve Line Breaks From TextArea When Writing To MySQL
Two solutions for this:
PHP function
nl2br()
:e.g.,
echo nl2br("This\r\nis\n\ra\nstring\r");// will outputThis<br />is<br />a<br />string<br />
Wrap the input in
<pre></pre>
tags.
Here is what I use
$textToStore = nl2br(htmlentities($inputText, ENT_QUOTES, 'UTF-8'));
$inputText
is the text provided by either the form or textarea.$textToStore
is the returned text from nl2br
and htmlentities
, to be stored in your database.ENT_QUOTES
will convert both double and single quotes, so you'll have no trouble with those.
Got my own answer: Using this function from the data from the textarea solves the problem:
function mynl2br($text) { return strtr($text, array("\r\n" => '<br />', "\r" => '<br />', "\n" => '<br />')); }
More here: http://php.net/nl2br