2016-02-19 71 views
0

我在Opencart代码中编辑了一个编辑,但是在查看foreach循环上的教程后,许多人强调使用htmlspecialchars防止注入的重要性。在foreach循环中使用htmlspecialchars

我是否需要在下面的代码中使用它?

<?php foreach ($totals as $total) { ?>]]> 
    <?php if ($total['title'] == "First Class") { $total['text'] = "Delivery"; } ?> 
    <?php if ($total['title'] == "48Hr Courier") { $total['text'] = "Delivery"; } ?> 
    <?php if ($total['title'] == "24Hr Courier") { $total['text'] = "Delivery"; } ?> 

我看到real_escape_string是另一种安全功能使用

+0

不,你不知道。但是我将这个答案建立在我对这里的上下文所作的一些明智的假设上。 – billynoah

+0

您不必在Opencart中使用'htmlspecialchars',因为它通过'htmlspecialchars'运行每个用户输入,但前提是您使用Opencart的Request类来检索这些输入。要输出实际的HTML代码,您必须使用'htmlspecialchars_decode'来解除转义的HTML代码。 –

回答

-1
<search position="after"><![CDATA[<?php foreach ($totals as $total) { ?>]]></search> 

这是不对的XML .... 您可以使用PHP librari的SimpleXML为创建有效的XML文件,并在此CDATA指令<![CDATA['sting '>o astea a'vyanmy'<>]]> ,符号不作为特殊字符interpriter。

+0

您可能不明白vQmod xml文件适用于什么或者它是如何构建的 – billynoah

+0

请阅读维基百科或标准,当我编写答案时阅读旧问题http://stackoverflow.com/posts/35508275/revisions – Naumov

+0

yes i阅读原始问题。你知道什么关于vqmod? – billynoah