mysql_real_escape_string()在cakePHP中不起作用

时间:2014-09-09 15:16:32

标签: php mysql cakephp-2.0 mysql-escape-string

我的查询是这样的,

... ON (`Test`.`id` = `Form`.`close_`%)...

抛出错误Syntax error or access violation: 1064。我正在使用cakePHP。我尝试使用

$field_name='close_%';
Sanitize::clean(utf8_encode($field_name),array('encode' => false));

我甚至尝试了mysql_real_escape_string()

我的专栏名称为close_%

但它仍然没有奏效。如何使用CakePHP在查询中使用%符号绕过列名?

1 个答案:

答案 0 :(得分:0)

Sanitize函数用于处理数据,而不是列名称,mysql_real_escape_string,这肯定是绝望的行为,是为同一件事而设计的。

您要做的是将列指定为:

`close_%`

请务必将整个列名放在后面的刻度内。

老实说,首先你不应该在列名中加入这样的垃圾。这很烦人。