书签 分享 收藏 举报 版权申诉 / 5
上传文档赚钱

类型PHP课件:第49讲 ThinkPHP 表单令牌及字段映射.ppt

  • 上传人(卖家):罗嗣辉
  • 文档编号:2088482
  • 上传时间:2022-02-14
  • 格式:PPT
  • 页数:5
  • 大小:495.50KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《PHP课件:第49讲 ThinkPHP 表单令牌及字段映射.ppt》由用户(罗嗣辉)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    PHP课件:第49讲 ThinkPHP 表单令牌及字段映射 PHP 课件 49 表单 令牌 字段 映射
    资源描述:

    1、(第(第49讲)讲) ThinkPHP ThinkPHP 表单令牌及字段映射表单令牌及字段映射学习目标学习目标 表单令牌的作用与实现 create方法 字段映射1表单令牌的作用与实现表单令牌的作用与实现 ThinkPHP内置了表单令牌验证功能,可以有效防止表单的重复提交等安全防护。表单令牌验证相关的配置参数有:TOKEN_ON=true, / 是否开启令牌验证TOKEN_NAME=_hash_, / 令牌验证的表单隐藏字段名称TOKEN_TYPE=md5, /令牌哈希验证规则 默认为MD5TOKEN_RESET=true, /令牌验证出错后是否重置令牌 默认为true如果开启表单令牌验证功能,

    2、系统会自动在带有表单的模板文件里面自动生成以TOKEN_NAME为名称的隐藏域,其值则是TOKEN_TYPE方式生成的哈希字符串,用于实现表单的自动令牌验证。自动生成的隐藏域位于表单Form结束标志之前,如果希望自己控制隐藏域的位置,可以手动在表单页面添加_TOKEN_ 标识,系统会在输出模板的时候自动替换。如果页面中存在多个表单,建议添加_TOKEN_标识,并确保只有一个表单需要令牌验证。(第(第49讲)讲) ThinkPHP ThinkPHP 表单令牌及字段映射表单令牌及字段映射1表单令牌的作用与实现表单令牌的作用与实现 如果个别页面输出不希望进行表单令牌验证,可以在控制器中的输出方法之前

    3、动态关闭表单令牌验证,例如:C(TOKEN_ON,false);$this-display();模型类在创建数据对象的同时会自动进行表单令牌验证操作,如果你没有使用create方法创建数据对象的话,则需要手动调用模型的autoCheckToken方法进行表单令牌验证。如果返回false,则表示表单令牌验证错误。例如:$User = M(User); / 实例化User对象/ 手动进行令牌验证if (!$User-autoCheckToken($_POST)/ 令牌验证错误(第(第49讲)讲) ThinkPHP ThinkPHP 表单令牌及字段映射表单令牌及字段映射2create 方法方法 步骤

    4、 说明 返回 1 获取数据源(默认是POST数组) 2 验证数据源合法性(非数组或者对象会过滤) 失败则返回false 3 检查字段映射 4 判断提交状态(新增或者编辑 根据主键自动判断) 5 数据自动验证 失败则返回false 6 表单令牌验证 失败则返回false 7 表单数据赋值(过滤非法字段和字符串处理) 8 数据自动完成 9 生成数据对象(保存在内存) 因此,我们熟悉的令牌验证、自动验证和自动完成(我们会在后面看到相关的用法)功能,其实都必须通过create方法才能生效。Create方法创建的数据对象是保存在内存中,并没有实际写入到数据库中,直到使用add或者save方法才会真正写入

    5、数据库。因此在没有调用add或者save方法之前,我们都可以改变create方法创建的数据对象(第(第49讲)讲) ThinkPHP ThinkPHP 表单令牌及字段映射表单令牌及字段映射3字段映射字段映射 ThinkPHP的字段映射功能可以让你在表单中隐藏真正的数据表字段,而不用担心放弃自动创建表单对象的功能,假设我们的User表里面有username和email字段,我们需要映射成另外的字段,定义方式如下:Class UserModel extends Model protected $_map = array( name =username, / 把表单中name映射到数据表的usern

    6、ame字段 mail =email, / 把表单中的mail映射到数据表的email字段 );这样,在表单里面就可以直接使用name和mail名称作为表单数据提交了。在保存的时候会字段转换成定义的实际数据表字段。如果我们需要把数据库中的数据显示在表单中,并且也支持字段映射的话,需要对查询的数据进行一下处理,处理方式是调用Model类的parseFieldsMap方法,例如:$User = M(User);/ 实例化User模型$data = $User-find(3);这个时候取出的data数据包含的是实际的username和email字段,为了方便便表单输出,我们需要处理成字段映射显示在表单中,就需要使用下面的代码处理:$data = $User-parseFieldsMap($data);这样一来,data数据中就包含了name和mail字段数据了,而不再有username和email字段数据了。 (第(第49讲)讲) ThinkPHP ThinkPHP 表单令牌及字段映射表单令牌及字段映射

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:PHP课件:第49讲 ThinkPHP 表单令牌及字段映射.ppt
    链接地址:https://www.163wenku.com/p-2088482.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库