我在 Magento 中遇到了一个看似错误的问题,但我希望比我更聪明的人能解释一下。
在 VoteController.php 中,函数addAction调用_redirectReferer它的最后一行。这样做的目的是在 Magento 投票后将用户重定向回原始页面。
_redirectReferercall _getRefererUrl,它从几个地方获取引用 url。此函数所做的最后一件事是调用escapeUrlURL 字符串。 escapeUrl是htmlspecialchars.
结果是一个类似于example.com/?a=b&c=d变成的 URL example.com/?a=b&c=d(注意损坏的 & 符号)。
在 URL 上调用 htmlspecialchars 的目的是什么?
资源
addAction:/app/code/core/Mage/Poll/controllers/VoteController.php
_redirectReferer和_getRefererUrl:/app/code/core/Mage/Core/Controller/Varien/Action.php
escapeUrl:/app/code/core/Mage/Core/Helper /摘要.php