php输出内容出现html标签的问题

我从数据库中读取数据的时候,结果是连html标签都出来了,<FONTface=宋体>美丽梦幻的插画作品</FONT>怎么去掉... 我从数据库中读取数据的时候,结果是连html标签都出来了,<FONTface=宋体>美丽梦幻的插画作品</FONT>怎么去掉 展开
 我来答
stoner_kuang
2010-05-06 · 超过14用户采纳过TA的回答
知道答主
回答量:46
采纳率:0%
帮助的人:35.2万
展开全部
应该是你的数据在插入到数据库前或者是数据被读出来之后,被函数“htmlspecialchars”把“<>”这两个标记给转换成html代码即“<>”
解决办法是,你在网站的程序那修改,就是要先看一下,是在哪个地方把数据转换掉的,那在那里把那个函数去掉就行了,像你这种情况的话应该是在插入数据之前就已经被转换了……先把函数去掉,然后再更新一下数据就行了但是,这样子操作的话会有一个问题,就是如果你的数据里有双引号的话那么你的网页就会出现茬子,所以在读出来的数据那要加上“addSlashes”函数,其作用是在“双引号”或单“引号前”加“\”把那些引号变成转义字符,这样子页面就不会有问题了
老咖啡馆idfig
2010-05-06 · 超过14用户采纳过TA的回答
知道答主
回答量:46
采纳率:0%
帮助的人:46.2万
展开全部
你插入的数据是不是从编辑器里提交的数据啊?这样的数据再放到编辑器里读取就可以了。要么就在插入或读取数据的时候过滤一下html标记,给你一个过滤html代码的函数:
function ihtmlspecialchars($string) {
if(is_array($string)) {
foreach($string as $key => $val) {
$string[$key] = ihtmlspecialchars($val);
}
} else {
$string = preg_replace('/&((#(\d{3,5}|x[a-fa-f0-9]{4})|[a-za-z][a-z0-9]{2,5});)/', '&\\1',
str_replace(array('&', '"', ''), array('&', '"', '<', '>'), $string));
}
return $string;
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
czloveyeer
2010-05-06 · 超过13用户采纳过TA的回答
知道答主
回答量:102
采纳率:0%
帮助的人:46.5万
展开全部
你插入到数据库肯定有HTML代码,从源头开始解决
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式