php - Codeigniter 在查询中转义句点

标签 php mysql codeigniter

我用这个位在数据库中搜索 IP 地址。

$this->db->where("IP1='$ip' OR IP2='$ip'");

当我使用它时,它会转义 IP 地址中的句点并通过生成此值来中断查询。

SELECT * FROM (`xxxx`) WHERE `IP1='111`.`111`.`111`.`111'` 

我希望它产生:

SELECT * FROM (`xxxx`) WHERE IP1='111.111.111.111' OR IP2 = '111.111.111.111'

谢谢!

最佳答案

来自documentation :

$this->db->where() 接受可选的第三个参数。如果将其设置为 FALSE,CodeIgniter 将不会尝试使用反引号保护您的字段或表名称。 ”

$this->db->where('MATCH (field) AGAINST ("value")', NULL, FALSE);

如果你这样做,你最好确保你正在清理你的变量。

关于php - Codeigniter 在查询中转义句点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7733629/

相关文章:

mysql - 在Lua中将JSON插入MySQL

javascript - 如何从数据库中获取数据到javascript文件中并将其存储在数组中?

php - http post请求帮助

php - 如何使用 Carbon 获取上个月的第一天和最后一天 - Laravel

php - 如何使用 mysql 中的数据动态生成 php 中的嵌套数组?

mysql - GROUP_CONCAT 内的 DATE_FORMAT

php - Codeigniter 3 中的分页

php - 使用空格访问类属性

php -\w 将来会等同于\p{L} 吗?

php - 如何获取 Div 或表格的像素宽度?