UPDATE误导 - ヶ辆不起作用
(我可能只是删除了这个问题 - 但我还不如把它作为一个提醒大家的是,有时错误比我们看别的地方... )
我非常抱歉,我让你思考这个问题:“实际结果”的原因是在一个完全不同的位置,并且与htmlentities
无关。
感谢大家谁试图帮助。
为什么此代码不能在我的PHP 5.4.32网站中工作?
代码:
$returnValue = htmlentities(urldecode('//echo \'<textarea name="comments" id="comments">$theData</textarea>\';'), ENT_QUOTES, 'UTF-8');
echo '<textarea>' . $returnValue . '</textarea>';
预期结果:
以实际字符串一个textarea
//echo '<textarea name="comments" id="comments">$theData</textarea>';
实际结果:
一个textare一个以实际字符串
//echo '<textarea name="comments" id="comments">$theData
(以下简称“”在原来的字符串实际上关闭HTML文本区域。)
以同样的方式,脚本可以被注入(这就是为什么我最初使用的原因ヶ辆)。
非常奇怪的事情:
如果我只是在上面的示例代码添加到我的PHP文件的开头,它按预期工作。所以一定有一些原因,为什么它不能在页面上进一步工作。我不知道代码中没有可能的原因。
怎么了?
btw:使用htmlspecialchars
不会改变效果。
这是一个误解。 '// echo'';'是应该在外部textarea块内显示的文本字符串。 – 2014-10-22 06:37:35