本文实例讲述了thinkPHP中create方法与令牌验证。分享给大家供大家参考,具体如下:
thinkPHP的create方法与令牌验证主要是涉及表单的安全性。
代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
<?php
// 本类由系统自动生成,仅供测试用途
class IndexAction extends Action{
public function index(){
$this ->display();
}
//一般用户在网站完成信息的添加修改……但是有意外,用户吧网页另存为到本地了,然后在这当中模拟了很多组数据,然后……不停地刷新想我的数据库中写入,还将隐藏表当中的id给改了
//原先在处理过程中可以判断上级来源,如果上级地址等于我网站的地址,我就将其写入,如果不是我网站的,我就禁止其写入……而上级来源可以被模拟
//create() 会自动去获取相关数据;自动令牌验证;完成自动映射,自动填充,自动验证(三大自动)创建成功会返回一个数组,否则false ;会增加一个隐藏项隐藏项加密方法md5
//令牌验证可以设置,加密方法也可以设置 TOKEN_NO=>true;
function add(){
$user = new Model( 'user' );
if ( $vo = $user ->create()){
//success 这个方法是执行成功的一个方法,它会给出对应的跳转页面,跳转时间,还有成功信息提示,此文件放在default的Public公共文件里
//dump($vo);
echo $user ->username;
echo $user ->password;
dump( $user );
$this ->success( '实例化模型成功' );
}
else {
//error是执行失败的方法,在这个方法当中,执行失败代码就不会向后继续
$this ->error( $user ->getError()); //getError()专门用来显示详细错误信息
}
}
}
?>
|
模板文件如下:
1
2
3
4
5
6
|
<form action= "__URL__/add" method= "post" >
<input type= "text" name= "username" />
<input type= "password" name= "password" />
<input type= "hidden" id= "2" />
<input type= "submit" value= "提交" />
</form>
|
希望本文所述对大家基于thinkPHP框架的PHP程序设计有所帮助。