在使用数组方式的普通查询条件后-图像目标检测技术及应用

时间:2021-06-04 00:04:34
【文件属性】:
文件名称:在使用数组方式的普通查询条件后-图像目标检测技术及应用
文件大小:2.49MB
文件格式:PDF
更新时间:2021-06-04 00:04:34
ThinkPHP3.1 ThinkPHP3.1 完全开发手册 319 由于用户表的 score 设计的是数字类型,所以实际写入数据库之前,score 属性的值已经被强制进行 intval 转换了,模型的 save 方法也会同样进行字段类型检查。虽然在很多情况下,数据库本身也会进行数据转换, 但是对于某些数据库要求严格检查数据类型的情况会有帮助。 二、在使用数组方式的普通查询条件后 例如: 1. $User = M("User"); // 实例化 User对象 2. $condition['id'] = '1 OR 1=1'; 3. // 把查询条件传入查询方法 4. $User->where($condition)->select(); 对于这样的一个查询条件,在进行数据库查询之前,会对查询的数组条件进行字段类型检查,直接就把 id 的值强制转换为 1 然后再进行查询操作。 即使不进行强制转换,系统也会进行安全过滤,把这样的非法数据进行转义,区别在于这样对于数据库更 加安全,对于某些数据库要求严格检查数据类型的情况会有帮助。 14.3 防止 SQL 注入 对于 WEB 应用来说,SQL 注入攻击无疑是首要防范的安全问题,系统底层对于数据安全方面本身进行了很 多的处理和相应的防范机制,例如: 1. $User = M("User"); // 实例化 User对象 2. $User->find($_GET["id"]); 即便用户输入了一些恶意的 id 参数,系统也会强制转换成整型,避免恶意注入。这是因为,系统会对数据 进行强制的数据类型检测,并且对数据来源进行数据格式转换。而且,对于字符串类型的数据,ThinkPHP 都会进行 escape_string 处理。

网友评论