0

我需要知道如何以写入方式显示放入数据库长文本字段中的信息。

就像用户在下面这样写:

My life is full of love I fly like
wedding doves I blow passed stop signs
That intersect with hate lines

-

I know what I am
I know who I be
If you can't accept me
Then don't friend me

我希望它显示数据库中的文本,就像用户在 textarea 中写的一样,而不是像这样显示:

我的生活充满了爱 我像婚礼的鸽子一样飞翔 我吹过停车标志 与仇恨线相交 我知道我是谁 我知道我是谁 如果你不能接受我 那不要和我做朋友

我怎样才能在 PHP 中使用 PHP 正确显示信息?

4

4 回答 4

4

使用nl2br(). 它将换行符(例如从文本区域)转换为 HTML<br />标记。

于 2010-12-30T11:52:07.473 回答
1

如果您在数据上使用nl2br,它应该以与原始文本区域中大致相同的格式显示。

但是,我真的建议您首先阅读处理SQL 注入转义输出等内容,因为如果您不小心,您很可能会为一些跨站点脚本 (XSS) 问题做好准备。

于 2010-12-30T11:52:27.197 回答
0

如果要显示预先格式化的文本,请将其括在<pre></pre>标签中

  <pre>...your text here...</pre>

许多人不喜欢这个<pre>元素,因为它经常被糟糕的开发人员和设计师滥用,但这正是它应该被使用的情况。

大多数浏览器呈现的预格式化文本与普通文本不同,因此您可能需要调整样式表

body, pre {font-family: ...;font-size:....}
于 2010-12-30T12:17:15.690 回答
0

我怎么强调都不为过:您永远不应该按原样输出用户生成的内容,但要小心转义您输出的所有文本(请参阅: http: //php.net/manual/en/function.htmlspecialchars.php) .

于 2010-12-30T12:42:42.273 回答