首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > PHP >

页面含html文本提交处理,该怎么处理

2012-03-25 
页面含html文本提交处理XML code//xml局部格式如下aa urlwww.xxx.com![CDATA[font size13a hr

页面含html文本提交处理

XML code
//xml局部格式如下<aa url="www.xxx.com">    <![CDATA[       <font size="13"><a href="www.xxx.com?x=s&f=3" target="_blank">常 见 问 答1</a></font><br/><br/>       <font size="13"><a  href="www.xxx.com?x=s&f=3" target="_blank">常 见 问 答2</a></font><br/><br/>       <font size="13"><a  href="www.xxx.com?x=s&f=3" target="_blank">常 见 问 答3</a></font><br/><br/>    ]]>  </aa>


以上xml里面的正确格式

现在如果要修改的话,我会先取出aa节点下面的值,然后直接提交就报错。
我用htmlspecialchars编码过,然后提交给xml节点后,虽然不报错,但是显示成下面错误的这样。
XML code
<aa url="www.xxx.com">    <![CDATA[       &lt;font size="13"&lt;&lt;a href="www.xxx.com?x=s&f=3" target="_blank"&lt;常 见 问 答1&lt;/a&gt;&lt;/font&lt;&lt;br/&lt;&lt;br/&lt;    ]]>  </aa>


请问要提交含html标记的值给xml节点需要怎样处理下?

[解决办法]
CDATA 中的内容不需要转义!转义反而错了

[解决办法]
XML code
<aa url="www.xxx.com">           <font size="13"><a href="www.xxx.com?x=s&f=3" target="_blank">常 见 问 答1</a></font><br/><br/>       <font size="13"><a  href="www.xxx.com?x=s&f=3" target="_blank">常 见 问 答2</a></font><br/><br/>       <font size="13"><a  href="www.xxx.com?x=s&f=3" target="_blank">常 见 问 答3</a></font><br/><br/>      </aa>
[解决办法]
之后不要用htmlspecialchars编码
[解决办法]
php.ini中 magic_quotes_gpc()函数是打开的么?自动给引号转义了。。
[解决办法]
用XmlWriter写CDATA数据
[解决办法]
顺便给你粘过来.
PHP code
$str = <<<XML<root><url><![CDATA[ http://www.google.com ]]> </url><url><![CDATA[ http://www.yahoo.com ]]> </url></root>XML;$xml = simplexml_load_string($str,'simpleXMLElement',LIBXML_NOCDATA);header('Content-type: application/xml');$xw = new XMLWriter();$xw->openMemory();$xw->startDocument('1.0','utf-8');$xw->startElement('root');foreach ($xml->url as $item){//在循环内修改即可    $xw->startElement('url');    $xw->writeCdata($item.'abc');    $xw->endElement();}$xw->endElement();$xw->endElement();echo $xw->outputMemory(); 

热点排行