祸了我......
我不知道发生了什么,但是突然斜线被添加到请求对象中的字符串。
我将ID =“1”传递给服务器;
我组成了where子句。
$where = array( 'ID' => $_REQUEST['ID']);
$result = $wpdb->update($this->the_table, $dbfields, $where);
不知何故正在添加斜杠,因此where子句不匹配。 我该怎样摆脱流氓? 我试过了
$where = array( 'ID' => stripslashes($_REQUEST['ID']));
和
$where = array( 'ID' => stripslashes_deep($_REQUEST['ID']));
PHP Version 5.2.17
php.ini
magic_quotes_gpc
On On
magic_quotes_runtime
Off Off
magic_quotes_sybase
Off Off
非常感谢任何帮助。
UPDATE ----------------
我已经关闭了magic_quotes_gpc,但仍然没有快乐。
如果我硬编码
$where = array( 'ID' => "1");
工作正常。
然而使用这个 -
$id = stripslashes($_REQUEST['ID']);
$where = array( 'ID' => $id);
没有更新。
如果我回答$ where。
看起来像“1” - 没问题。
头疼的东西!一天前工作正常。
答案 0 :(得分:1)
关闭magic_quotes_gpc
。
在此实现这一目标的一些方法 - http://php.net/manual/en/security.magicquotes.disabling.php