加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – Codeigniter DB类与预备语句

发布时间:2020-12-13 17:23:55 所属栏目:PHP教程 来源:网络整理
导读:嗨,我想知道使用Codeigniters活动记录类是否等同于在安全问题方面使用预准备语句? ?php$stmt = $dbh-prepare("INSERT INTO REGISTRY (name,value) VALUES (:name,:value)");$stmt-bindParam(':name',$name);$stmt-bindParam(':value',$value);// insert one
嗨,我想知道使用Codeigniters活动记录类是否等同于在安全问题方面使用预准备语句?

<?php
$stmt = $dbh->prepare("INSERT INTO REGISTRY (name,value) VALUES (:name,:value)");
$stmt->bindParam(':name',$name);
$stmt->bindParam(':value',$value);

// insert one row
$name = 'one';
$value = 1;
$stmt->execute();

?>

$data = array(
   'title' => 'My title','name' => 'My Name','date' => 'My date'
);

$this->db->insert('mytable',$data); 

// Produces: INSERT INTO mytable (title,name,date) VALUES ('My title','My name','My date')

解决方法

CI不支持预准备语句,但它确实支持Query Bindings.查询绑定和预准备语句都会阻止sql注入.但我更喜欢AR因为易用性.它还使查询更具可读性.

您可以查看此link以获取更多详细信息.

并从此link检查CI查询绑定

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读