这是什么原因呢?

hleren 2004-12-02 01:15:07
从表单过来的数据,我如下处理了一下,
$temp = trim($temp);
$temp = nl2br($temp);
$temp = mysql_escape_string($temp);
然后入库,怎么从MYSQL读出就成下面这样了呢?
好呀<br />
<br />
真的很好<br />
<br />
<br />
很好的

为什么有<br />?
...全文
164 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
hleren 2004-12-02
  • 打赏
  • 举报
回复
但现在读出来,还是确实这样效果

好呀<br />
<br />
真的很好<br />
<br />
<br />
很好的


hleren 2004-12-02
  • 打赏
  • 举报
回复
谢谢各位,

我的意思是资料从库里面读出显示出来
echo $temp
就不应该看到
好呀<br />
<br />
真的很好<br />
<br />
<br />
很好的

这样的效果了,应该没有<br />了,
itbirder 2004-12-02
  • 打赏
  • 举报
回复
“nl2br();”函数转换出来的是“<br />”,不是“<br>”,不过也是能被浏览器执行。
你如果只是在文本输入表单下敲的回车,那只要“ str_replace("\n","<br>",$temp) ”就可以了。
hleren 2004-12-02
  • 打赏
  • 举报
回复
记得在页面上输出应该没有的
zzmpower 2004-12-02
  • 打赏
  • 举报
回复
nl2br 就是把换行字符串标识换成<br>啊,
TobyLee 2004-12-02
  • 打赏
  • 举报
回复
看你这种显示,应该在显示之前你用了HtmlSpecialChars之类的函数处理过吧?如果你要用这类函数处理的话,那在入库时就不要nl2br了,然后在显示的时候在HtmlSpecialChars之后再用nl2br就没有问题了.
itbirder 2004-12-02
  • 打赏
  • 举报
回复
上面说错了,你读取到文本框时,事先就不需要nl2br()了,在显示到html页是才用nl2br()处理一下。
这样就能正常显示了。
itbirder 2004-12-02
  • 打赏
  • 举报
回复
读取的时候用这个:StripSlashes($temp) 就可以了
hleren 2004-12-02
  • 打赏
  • 举报
回复
?
beijingalv 2004-12-02
  • 打赏
  • 举报
回复
看你的$temp里的原始字符串是什么了,可能有\n,因为nl2br就是newline to br啊,呵呵

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧