将 % 值插入数据库时​​出现 codeigniter 安全问题

Posted

技术标签:

【中文标题】将 % 值插入数据库时​​出现 codeigniter 安全问题【英文标题】:codeigniter security issue when inserting % value to database 【发布时间】:2013-08-27 10:28:08 【问题描述】:

我有一个非常有趣的问题。

我有文本框、按钮(添加到数据库)和用户输入类似的东西:

%100 付,%45 付,没有付.....

问题是结果与用户输入不同。我认为 codeigniter 清除了一些东西。

输入:%100 付,%75 付,没有付 结果:0 支付,%75 支付,没有支付

%100 pay 变为 0 pay 但 %75 pay 保持原值。

它不接受 1 和 % 的组合。

$this->db->insert('payment',$array);

【问题讨论】:

codeigniter security issue when inserting % 哪个安全问题?顺便说一句,对insertselect 类似的数据进行测试,但没有发现错误。 【参考方案1】:

是的,CodeIgniter 将删除输入数据中它认为危险的字符。此过滤器应用于$_POST$_GET$_COOKIE。你可以使用$_REQUEST 来解决这个问题。

【讨论】:

以上是关于将 % 值插入数据库时​​出现 codeigniter 安全问题的主要内容,如果未能解决你的问题,请参考以下文章

Codeigniter 模型出现错误:列计数与第 2 行的值计数不匹配

如何使用 Codeigniter 将 JQuery datepicker 中的值插入 MySQL 日期数据类型?

Codeigniter 将多个输入字段动态插入到数据库中?

使用Codeigniter将jQuery datepicker + timepicker中的值插入MySQL datetime数据类型?

在codeigniter中多次进入mysql时获取最后插入的'Id'

Codeigniter——Foreach 将数组插入数据库