本篇文章为大家展示了创建方法如何在ThinkPHP中使用,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
<强>一、数据表结构强>
用户表结构如下:
id用户名密码
<强>二,视图模板部分强>
\澳\ \ Tpl \用户默认\ \创建。html页面如下:
& lt; form action=癬_URL__/addit",方法=皃ost"比; ,& lt; input 类型=皌ext", name=癷d",/比; ,& lt; input 类型=皌ext", name=皍sername",/比; ,& lt; input 类型=皃assword", name=皃assword",/比; ,& lt; input 类型=皊ubmit", name=皊ub",价值=https://www.yisu.com/zixun/碧峤?/> 形式>
<强>三、行动部分:强>
\澳\ \ Lib \行动。php页面如下:
& lt; php ? ,class UserAction  extends Action  { function 才能;create () { ,,,,这个美元→显示(),,,, ,,} ,, ,,function 添加剂(){ ,,,,//向用户表中添加表单内容 ,,,,用户=美元(& # 39;用户# 39;); ,,,,$ user→创建(); ,,,,$ user→添加(); ,,,,//判断是否存在令牌验证 ,,,,如果(! $ user→autoCheckToken ($ _POST)) { ,,,,,,转储(& # 39;没有# 39;),, ,,,,其他}{ ,,,,,,转储(& # 39;是的,),,,, ,,,,} ,} 祝辞;
1,在对表单提交过来的数据进行操作之前,我们往往需要手动创建需要的数据,例如上面提交的表单数据:
,//实例化用户模型 用户=美元才能(& # 39;用户# 39;); , ,//获取表单的帖子数据 美元才能数据(& # 39;用户名# 39;]=$ _POST[& # 39;用户名# 39;】 美元才能数据(& # 39;密码# 39;]=$ _POST[& # 39;密码# 39;】 , ,//写入到数据库 ,,$ user→数据(元数据)→添加();
,附:使用数据方法创建的数据对象不会进行自动验证和过滤操作,需要自行处理,如果只是想简单创建一个数据对象,并且不需要完成一些额外的功能的话,可以使用数据方法简单的创建数据对象。
2, ThinkPHP可以帮助我们快速地创建数据对象,最典型的应用就是自动根据表单数据创建数据对象共创方法创建的数据对象是保存在内存中的,并没有实际的写入到数据库中。
,,,//实例化用户模型 ,,,用户=美元(& # 39;用户# 39;); ,, ,,//根据表单提交的文章数据创建数据对象,并保存在内存中,可以通过转储(用户)美元查看 ,,,$ user=创建(); ,,//把创建的数据对象写入数据库中 ,,,$ user→添加();
3,创建方法支持从其它方式创建数据对象,如,从其它的数据对象或者数组等。
,,, $ data[& # 39;名字# 39;]=& # 39;ThinkPHP& # 39;; ,,$ data [& # 39; eamil& # 39;]=& # 39; ThinkPHP@gmail.com& # 39;; ,,$ user→创建(元数据); ,,甚至还可以支持从对象创建新的数据对象,如从用户数据对象创建新成员的数据对象 ,,用户=美元(& # 39;用户# 39;); ,用户→美元才能找到(1); ,,成员=美元(& # 39;成员# 39;); 美元,才能成员→创建(用户)美元;
4,制造方法在创建数据对象的同时,还完成了一些很有意义的工作,包括令牌验证,数据自动验证,字段类型查找,数据自动完成等。
,,
因些,我们熟悉的令牌验证,自动验证和自动完成功能,其实都必须通过创建方法才能生效。
5,令牌验证:
,,
功能:可以有效防止表单的远程提交等安全防护。
,,配置。php中添加如下配置:
,,, & # 39; TOKEN_ON& # 39;,,,=祝辞,,真的,,//是否开启令牌验证 ,,& # 39;TOKEN_NAME& # 39;,,=祝辞,,& # 39;标记# 39;//,令牌验证的表单隐藏字段名称 ,,& # 39;TOKEN_TYPE& # 39;,,=祝辞,,& # 39;md5 # 39;//令牌验证哈希规则
自动令牌会向当前会话会话当中放上一个md5加密的字符串。并将这个字符串以隐藏域的形式插入到表单的形式之前。这个字符串出现在两个地方,一个是当在会话中,另一个就是在表单当中。当你提交表单后,服务器第一件事就是对比这个会话信息,如果正确的话,准许表单提交,否则不允许提交。
查看创造。html的的源代码会看到在表单形式的结束标志之前会多了一个自动生成的隐藏域
& lt; input 类型=癶idden", name=皌oken", value=https://www.yisu.com/zixun/" eef419c3d14c9c93caa7627eedaba4a5 "/>
(1),如果希望自己控制隐藏域的位置,可以手动在表单页面添加{__TOKEN__}标识,系统会在输出模板的时候自动替换。