在 CodeIgniter 中防止 SQL 注入的最佳方法是啥 [重复]
Posted
技术标签:
【中文标题】在 CodeIgniter 中防止 SQL 注入的最佳方法是啥 [重复]【英文标题】:What are the best ways to prevent SQLInjection in CodeIgniter [duplicate]在 CodeIgniter 中防止 SQL 注入的最佳方法是什么 [重复] 【发布时间】:2015-08-08 06:58:39 【问题描述】:我是 codeigniter 框架的新手,我提出了一些疑问,我的问题是什么是保证我的查询安全的最佳方法。我应该使用mysql_real_escape_string
还是有更好的方法。
我使用以下代码进行插入:
function createCustomer($data)
$this->firstname = $data['firstname'];
$this->lastname = $data['surname1'].' '.$data['surname2'];
$this->address = $data['adres'];
$this->zipcode = $data['zipcode'];
$this->mail = $data['mail'];
$this->phonenumber = $data['phonenumber'];
$this->db->insert('Klant',$this);
//Check if the change was succesfull
return ($this->db->affected_rows() != 1) ? false : true;
获取的代码如下:
function getUserByName($firstname, $lastname)
$query = $this->db->get_where('Customer', array('firstname' => $firstname, 'lastname' => $lastname));
return $query->result();
防止 sql 注入的最佳方法是什么?欢迎任何提示。
【问题讨论】:
***.com/questions/1615792/… 不,你不要使用 mysql_*() 函数。它们已过时且已弃用。 我错过了那个问题,我现在应该阅读它,谢谢你的链接。我会记住这一点 框架已经内置了。 【参考方案1】:最好的办法是 打开文件 config.php 文件位置应用程序/配置
使以下代码为真
|--------------------------------------------------------------------------
| Global XSS Filtering
|--------------------------------------------------------------------------
|
| Determines whether the XSS filter is always active when GET, POST or
| COOKIE data is encountered
|
*/
$config['global_xss_filtering'] = FALSE;
到
|--------------------------------------------------------------------------
| Global XSS Filtering
|--------------------------------------------------------------------------
|
| Determines whether the XSS filter is always active when GET, POST or
| COOKIE data is encountered
|
*/
$config['global_xss_filtering'] = TRUE;
您无需再为防止 sql 注入和跨站点脚本执行任何操作。
【讨论】:
这是一个快速修复!不需要清理我的查询吗? 注意:global_xss_filtering
设置已在 CodeIgniter 版本 3 中弃用
既然他们不推荐使用它,我不应该使用它吗?你还有什么推荐的吗?
这对防止 SQL 注入没有任何作用。答案是完全错误的。以上是关于在 CodeIgniter 中防止 SQL 注入的最佳方法是啥 [重复]的主要内容,如果未能解决你的问题,请参考以下文章