我有一个复杂的表格,我首先必须获取一些$_GET
参数,显然我必须对它们做一个mysql_real_escape_string()
,因为我用它们在数据库中查找东西。
他们的问题是在最初的数据库查找之后。当用户提交表单时,我将它们作为$_POST
请求发送,显然必须mysql_real_escape_string
再次进行此调用,以防有人试图通过伪造的表单提交来入侵我的网站。
然后我遇到的问题是参数被转义了两次,我的查询开始看起来很奇怪,如下所示:
select field1 , field2 , from my_table where some_id = \'.$lookup_id.\' ...
所以系统似乎正在添加 \' 并且它让我感到困惑:) 另外,在我的其他形式中,我还没有看到这种行为。关于可能导致这种情况的任何想法?
一件奇怪的事情是我试图向帖子发送未转义的参数,并且发生了同样的问题。这是一个线索,但对我来说还不够。:(