首页
技术博客
PHP教程
数据库技术
前端开发
HTML5
Nginx
php论坛
新用户注册
|
会员登录
PHP教程
技术博客
编程问答
PNG素材
编程语言
前端技术
Android
PHP教程
HTML5教程
数据库
Linux技术
Nginx技术
PHP安全
WebSerer
职场攻略
JavaScript
开放平台
业界资讯
大话程序猿
登录
极速注册
取消
热门标签 | HotTags
mysqli
mongodb
oracle
elasticsearch
数据库
firebase
pymongo
sqlite
join
odbc
memcached
mariadb
json
insert
sql
redis
database
nosql
sqlserver
hbase
mysql
当前位置:
开发笔记
>
数据库
> 正文
ThinkPHP3.1新特性:查询条件预处理
作者:荆怡婷151 | 来源:互联网 | 2013-06-07 11:12
3.0版本对数组方式的查询条件会进行安全过滤(由于3.0强制使用了字段类型检测,所以数组方式的查询条件会强制转换为字段的设定类型),但不支持字符串条件的安全过滤。3.1版本则增加了对条件字符串增加了预处理支持,让ORM的安全性更加得以保证。
3.0版本对数组方式的查询条件会进行安全过滤(由于3.0强制使用了字段类型检测,所以数组方式的查询条件会强制转换为字段的设定类型),但不支持字符串条件的安全过滤。3.1版本则增加了对条件字符串增加了预处理支持,让ORM的安全性更加得以保证。
一、使用where方法
Model类的where方法支持字符串条件预处理,使用方式:
$Model
->
where
(
"id=%d and username='%s' and
xx='%f'"
,
array
(
$id
,
$username
,
$xx
))->
select
();
或者直接使用:
$Model
->
where
(
"id=%d and username='%s' and xx='%f'"
,
$id
,
$username
,
$xx
)->
select
();
如果$id变量来自用户提交或者URL地址的话,如果传入的是非数字类型,则会强制格式化为数字格式后进行查询操作。
字符串预处理格式类型支持指定数字、字符串等,具体可以参考vsprintf方法的参数说明。
二、使用query和execute方法
除了where条件外,对原生SQL查询方式也支持预处理机制,例如:
$Model
->
query
(
"SELECT * FROM think_user WHERE id=%d and username='%s' and xx='%f'"
,
array
(
$id
,
$username
,
$xx
));
模型的execute方法也和query方法一样支持预处理机制。
安全
sql
写下你的评论吧 !
吐个槽吧,看都看了
会员登录
|
用户注册
推荐阅读
mysql
解决phpMyAdmin运行错误:mysqli_init(): 属性访问尚未允许
本文探讨了在使用phpMyAdmin过程中遇到的mysqli_init()函数错误,并提供了有效的解决方案。 ...
[详细]
蜡笔小新 2024-12-04 17:35:56
redis
深入解析ThinkPHP中的缓存管理方法:cache
本文详细介绍ThinkPHP框架中的cache方法,涵盖其功能、参数配置及使用场景,特别指出从3.1.2版本起,cache方法已被S方法取代。 ...
[详细]
蜡笔小新 2024-12-04 16:49:54
database
应用程序配置详解
本文介绍了配置文件的关键特性及其在不同场景下的应用,重点探讨了Machine.Config和Web.Config两种主要配置文件的用途和配置方法。文章还详细解释了如何利用XML格式的配置文件来调整应用程序的行为,包括自定义配置、错误处理、身份验证和授权设置。 ...
[详细]
蜡笔小新 2024-12-03 19:57:42
mysql
Web安全入门:MySQL基础操作与SQL注入防范
本文详细介绍了MySQL数据库的基础操作命令,包括数据库和表的基本管理,以及数据的增删查改等常用操作。同时,针对Web安全领域常见的SQL注入问题,提供了初步的理解和防范措施。 ...
[详细]
蜡笔小新 2024-12-03 14:00:48
sql
掌握Python岗位,你需要了解的关键技能
最近,在社交平台脉脉上,一条关于Python岗位的消息引起了广泛关注。本文将探讨Python岗位的实际价值,并深入解析阿里巴巴等大公司在面试Python开发者时常见的问题。 ...
[详细]
蜡笔小新 2024-12-04 16:31:13
sql
深入理解索引:加速数据查询的秘密武器
通过阅读本文,您将全面了解如何在数据库表中有效利用索引提升查询效率。本文不仅探讨了索引为何能提高查询速度,还深入分析了不同类型的索引结构及其在SQL Server中的实现方式。 ...
[详细]
蜡笔小新 2024-12-04 15:50:59
mysql
MySQL 中分页与模糊查询的陷阱及解决方案
本文探讨了在 MySQL 数据库中使用 LIKE 语句进行模糊查询并结合分页处理时可能遇到的问题,并提出了解决这些潜在陷阱的有效方法。 ...
[详细]
蜡笔小新 2024-12-04 13:34:01
sql
oracle中的数据集合操作
一、数据更新操作DML语法中主要包括两个内容:查询与更新,更新主要包括:增加数据、修改数据、删除数据。其中这些操作是离不开查询的。1、增加数据语法:INSERTINTO表名称[(字 ...
[详细]
蜡笔小新 2024-12-04 12:15:42
mysql
SQL注入实验:SqliLabs第38至45关解析
本文深入探讨了SqliLabs项目中的第38至45关,重点讲解了堆叠注入(Stacked Queries)的应用技巧及防御策略。通过实际案例分析,帮助读者理解如何利用和防范此类SQL注入攻击。 ...
[详细]
蜡笔小新 2024-12-04 11:17:35
mysql
KKCMS代码审计初探
本文主要介绍了KKCMS的安装过程及其基本功能,重点分析了该系统中存在的验证码重用、SQL注入及XSS等安全问题。适合初学者作为入门指南。 ...
[详细]
蜡笔小新 2024-12-04 09:30:07
mysql
解决Windows 2003上MySQL连接失败的问题
本文详细探讨了在Windows Server 2003环境下遇到MySQL连接失败(错误代码10061)的解决方案,包括通过卸载特定的Windows更新和调整系统注册表设置的方法。 ...
[详细]
蜡笔小新 2024-12-03 19:23:31
mysql
解决 SQL Server 2008 安装时系统配置初始化失败问题
尝试从 MySQL 转向 SQL Server 2008 时遇到了安装错误,提示“系统配置未能初始化”,错误代码为 0x84B10001。怀疑可能是由于之前的 MySQL 安装残留导致的注册表问题。寻求专家建议。 ...
[详细]
蜡笔小新 2024-12-03 19:15:15
sql
使用DataGridViewComboBoxColumn实现数据绑定与操作
本文详细介绍如何在DataGridView中使用DataGridViewComboBoxColumn来加载、选择和保存数据库中的数据,提供具体的实现步骤和示例代码。 ...
[详细]
蜡笔小新 2024-12-03 18:21:44
sql
GBae 8s SQL 指南:SAVEPOINT语句详解
本文详细介绍了如何在SQL查询中使用SAVEPOINT语句进行事务管理,以及如何通过多列排序增强查询结果的组织性。例如,通过在ORDER BY子句中指定多个列,可以实现更加细致和灵活的数据排序。 ...
[详细]
蜡笔小新 2024-12-03 17:34:49
mysql
技术分享:从Oracle数据库中使用REGEXP_SUBSTR提取括号内容
本文探讨了如何利用Oracle的REGEXP_SUBSTR函数高效地从复杂字符串中提取括号内的特定值,提供了详细的示例和解决方案。 ...
[详细]
蜡笔小新 2024-12-03 13:44:40
荆怡婷151
这个家伙很懒,什么也没留下!
Tags | 热门标签
mysqli
mongodb
oracle
elasticsearch
数据库
firebase
pymongo
sqlite
join
odbc
memcached
mariadb
json
insert
sql
redis
database
nosql
sqlserver
hbase
mysql
RankList | 热门文章
1
EJB 通过ANT卸载发布项目时 BUILD FAILED
2
java中实现链表(转)
3
WCF学习笔记概述之计算服务(1)
4
在Microsoft Word里边,怎样设置每页不同的页眉?
5
老李推荐:第4章3节《MonkeyRunner源码剖析》ADB协议及服务: ADB协议概览
6
2018年PHP有哪些新趋势
7
c#中using-添加引用-程序集(详解) 以及与 c++中include等区别
8
核桃编程python下载网址_核桃编程下载核桃编程 v2.1.13.0 官方版安下载
9
Oracle 将列由 varchar2 改成 clob 方法
10
centos7如何利用yum安装mysql 8.0.12
11
阿里巴巴DevOps实践指南 | 云端开发
12
java 抽取类、抽取方法
13
【ROS学习笔记】13.ROS中的坐标管理系统
14
JavaScript学习笔记(三)之对象篇
15
fastmenuitem icon example not working as expected
PHP1.CN | 中国最专业的PHP中文社区 |
DevBox开发工具箱
|
json解析格式化
|
PHP资讯
|
PHP教程
|
数据库技术
|
服务器技术
|
前端开发技术
|
PHP框架
|
开发工具
|
在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved |
京公网安备 11010802041100号
|
京ICP备19059560号-4
| PHP1.CN 第一PHP社区 版权所有