1、普通CURD
赏金的那套做法基本是完美的!通过它,学会了CURD。【只做一个页面list,里面有添加、编辑、删除3个按钮,这3个都用ajax提交信息,经过控制器、模型、验证器,再ajax返回信息给前端,做出跳转。这里面牵扯软删除、自动时间戳、验证场景、关联模型、获取器(1=已激活)等注意点。success和error跳转会自动判断请求是否是ajax请求,如果是,会给ajax返回数据,而不进行默认跳转。包括 redirect 、 success 和 error 方法在内的url地址参数不需要使用url方法,系统会自动调用url方法,否则会出现重复的url后缀】。
2、登陆相关
重复登陆、非法登陆的处理,session存储用户信息(不需要assign,直接在模板中使用)、session过期,验证码的生成和校验,前后端验证,注册、忘记密码的处理。ajax检验用户名是否已经存在(onblur="checkname")。
3、上传图片
上传图片、显示图片等处理(上传时,是form表单中的一个特殊数据,在数据库中的一列数据)。
(1)上传图片
tp3中有upload类可以上传图片,tp5是怎么处理的?
<form enctype='multipart/form-data'>,<input type='file'>
主要是地址怎么生成?move_uploaded_file函数会将图片上传到网站文件夹,且命名。
request::file( ) //现在到了临时文件夹
move('upload文件夹') //移动到网站的文件夹
将图片的路径名存储到数据库中 path=rootphth.$img['savepath'].$img['savename']
(2)显示图片
<td><img src="{$val.img}" sytle="w80,h80"/></td>
这里的路径要注意!在模板中使用函数去掉路径前的点号,{$val.img|substr=1}
(3)缩略图
tp3中有image类可以做缩略图,tp5是怎么处理的?
在数据库中存储时,一列big_img,一列small_img。
制作缩略图时,还可以添加水印等操作。
4、RBAC
用户、角色、权限3张表的关系
表的设置!
关联查询!
无限级分类函数!
越权控制!
体会:
1、以上4点的本质还是CURD。
2、以上4点是初级后端程序员的任务,进阶之后,就要处理三高了。
3、好多操作没做过时以为很难,学一遍,想清楚后,操作就很简单,可能只加一行代码就搞定!如:RBAC中将现有权限勾上!
4、多敲代码,形成代码量。
5、在demo中形成自己的代码库。