TP5之安全机制

news/2024/11/18 2:42:50/

防止sql注入


1、查询条件尽量使用数组方式,具体如下:

$wheres = array();$wheres['account'] = $account;$wheres['password'] = $password;$User->where($wheres)->find();

2、如果必须使用字符串,建议使用预处理机制,具体如下:

$User = D('UserInfo');$User->where('account="%s" andpassword="%s"',array($account,$password))->find();

3、可以使用PDO方式(绑定参数),因为这里未使用PDO,所以不罗列,感兴趣的可自行查找相关资料。



表单合法性检测


1、配置insertFields和updateFields属性

class UserInfoModelextends Model {// 数据表名字protected $tureTableName ='user';// 配置插入和修改的字段匹配设置(针对表单)protected $insertFields =array('name','sex','age');protected $updateFields =array('nickname','mobile');} 

上面的定义之后,当我们使用了create方法创建数据对象后,再使用add方法插入数据时,只会插入上面配置的几个字段的值(更新类同),具体如下:

// 用户注册(示意性接口:插入)public function register() {// ...// 使用Model的create函数更安全$User= D('UserInfo');$User->create();$ID= $User->add();if($ID) {$result= $User->where('id=%d',array($ID))->find();echo json_encode($result);}// ...} 

2、使用field方法直接处理

// 插入M('User')->field('name,sex,age')->create();// 更新M('User')->field('nickname,mobile’)->create();

 


http://www.ppmy.cn/news/720963.html

相关文章

ROS学习笔记 -day1入门学习

学习资料:https://sychaichangkun.gitbooks.io/ros-tutorial-icourse163/content/chapter1/ 1、Linux下的编译器:gcc/g , Makefile , Cmake , … ROS对Cmake进行拓展 — Catkin(对cmake , make指令进行封装) 2、Catkin编译与工作…

超低延迟高可靠

1. 超低延迟 1.1 解释 超低延迟通常指延迟至少低于10 ms,甚至低于1ms。 1.2 影响因素 1.2.1 传统因素 传播延迟:取决于路径长度;传输延迟:取决于数据包大小;排队延迟:取决于处理速度和到达速率&#x…

OBS降低延迟

设置->输出->输出模式选择高级 image.png 码率控制选择ABR。比特率设置在2500以上。这里在选择时应考虑到大多数观众端的网络状况,避免因推流画面质量过,导致高观看端由于网速有限出现卡顿。关键帧间隔设置为1。CPU使用预设选择superfast。配置选择…

谈谈网络游戏中的延迟解决方案

我们平常玩的很多网络游戏,比如英雄联盟/王者荣耀/PUBG等,你感觉到卡顿往往不是因为你的网速问题,而是因为网络延时导致的,比如说LOL美服的游戏服务器在美国,而你在中国的华中地区玩着美服LOL,那么你的延迟…

Moba类游戏中如何处理网络延迟与卡顿

《王者荣耀》技术测试版本出台的时候,延迟非常大,而且还是卡顿,现在看一下帧同步里面比较特别的地方。帧同步有点像在看电影,它传统的帧同步需要有buffer,每个玩家输入会转发给所有客户端,互相会有编号&…

网速卡慢延迟大怎么解决?

网络卡慢是一个让人十分烦躁的问题,无论你是在工作中还是在娱乐时都可能遭遇这样的情况。但是,如果你知道如何解决这个问题,你就可以避免这种情况并保持高速的网络连接。在本文中,小秋将分享一些实用的技巧和建议,帮助…

Java教程使用POI读取excel文档

POI简介 由Apache公司提供的API&#xff0c;可以读写Microsoft Office格式的文件 依赖 <dependency><groupId>org.apache.poi</groupId><artifactId>poi</artifactId><version>5.2.0</version></dependency><dependency&g…

【数据库】使用DBever连接人大金仓数据库

下载安装DBever 首先需要下载并安装DBever&#xff0c;可以在DBever官网上下载最新版的安装程序&#xff0c;根据提示进行安装即可。 下载驱动程序 首先需要从人大金仓官方网站下载适用于DBever的驱动程序。下载完成后&#xff0c;将驱动程序保存到本地计算机上。 添加驱动…