I am creating a news publishing website and the only thing I can’t do in the site is enter and show new-line.
There is a textarea in the site to write articles, if I press ENTER while I am typing, it will take me into a new line, but after having submitted all, and make query to mysql to pull and echo what I had typed in, the new line does not show up. All texts are next to each other. So, I was wondering if i could input and output newlines in textarea with the help of PHP?
When you submit a form, you are submitting text.
When you put that text into an HTML document, it is HTML.
In HTML a new line is just a piece of white space with the same significance as a space or a tab.
If you want new lines to show up, then you need to with wrap them with markup that causes them to be rendered (such as a
<pre>element or an element with thewhite-spaceproperty set to cause them to render) or you need to replace them with suitable markup.A very primitive replacement would be PHP’s
nl2brfunction. A more advanced option would generate<p>elements and treat different numbers of sequential new lines differently (e.g. a Markdown parser such as the one used by Stackoverflow).