Codeigniter-类似于查询无法与搜索字符串一起使用

时间:2018-09-06 09:49:32

标签: php codeigniter-2

在我的PHP-Codeigniter function()中,我给出了以下命令:

function get_cust($search='David')
{
$query = 'select pp.first_name from Cust pp where'; 
$query .= ' pp.first_name LIKE "%'.escape_like_str($search).'%")';
print_r(mysql_real_escape_string($query));
}

但是当我在浏览器中执行输出时:

select pp.first_name from Cust pp where pp.first_name LIKE 'Úvid%'

反正还是这样,我可以得到它:

select pp.first_name from Cust pp where pp.first_name LIKE '%David%'

我也尝试过使用addslashes()mysql_real_escape_string()。有谁知道如何将'Úvid%'更改为'%David%' 我在本地计算机上使用PHP 5.4,所以无法使用mysqli

2 个答案:

答案 0 :(得分:1)

您的代码一切都很好。 %Dahtml entity

  

Ú%DAÚ大写U,重音

因此,这只是输出数据的问题,在内部您的查询文本是正确。尝试使用另一个字符串作为搜索请求,而不以Da开头,或者仅执行mysql查询并查看其结果。

答案 1 :(得分:0)

我建议在Codeigniter中使用查询生成器。您可以找到documentation of like here。看起来像这样:

-XX:MaxMetaspaceSize=3200m