0

标题有点说明了一切。我应该使用 nl2br(htmlspecialchars($text)) 来回显/打印到屏幕上的所有内容吗?

我一直在环顾四周,似乎这个词是在处理来自用户的输入时,通过将其转义并将其插入数据库来对其进行清理。然后从数据库中检索时,如果我打算将其吐出到屏幕上,我应该使用 htmlspecialchars() 将不友好的字符转换为安全的等效字符,如果我想将换行符转换为换行符,则使用 nl2br() 围绕它?

我是否应该创建一个名为 safeEch​​o() 的新函数,echo nl2br(htmlspecialchars($text))它在我可能不得不输出可能来自用户的任何地方使用它,而不是通常的 echo/print 语句?

4

1 回答 1

2

不,要安全地保存在您的数据库中,您只需要这个:(转义单/双引号和其他)

mysql_real_escape_string($thedata);

从数据库读取时,不要做任何事情;许多转换没有任何好处。

nl2br 只接受 "\n" 并产生一个<br \>; 肯定不需要打印..

于 2012-06-01T05:53:08.960 回答