1、创建公共控制器Base
2、修改数据库信息
3、用户自定义模型
4、表单验证
5、首页
控制器
视图
5、用户注册
控制器
视图
ajax验证注册
注册按钮绑定点击事件,post提交form表单序列化数据
Request::except排除确认密码,其他获取
验证规则(重写)
先验证注册数据,验证成功再添加数据库
User用户模型
设置自动时间戳$autoWriteTimestamp = true
获取器 get字段名Attr()
修改器 set字段名Attr()
6、用户登录
用户登录控制器
用户登录验证处理控制器
验证成功后传入session值
视图
根据Session有没有值来显示用户名,没有值则显示登录注册
7、退出登录
控制器
清除session的值
8、防止重复登录
用户登录前调用防止重复登录方法
9、模板继承
view层下建立模板文件通用(常用名Base)
view层下建立公共文件名(常用名Public)
block定义相关的区块进行重载,继承基础的模板
10、发布文章
控制器
模型
$auto 无论是新增或者更新都会设置的字段
$insert 新增会设置的字段
$update 更新会设置的字段
验证规则
视图
form表单上传文件图片加属性enctype=”multipart/form-data”
加个隐藏域传用户id
分类(栏目名称)
用volist循环输出(name属性表示模板赋值的变量名称,id表示当前的循环变量)
11、保存文章
控制器
file上传图片
12、注册完成后自动登录
$user返回的是模型对象
13、显示导航栏
请求变量 $Request.param.变量名
empty标签用于判断某个变量是否为空
判断请求变量cate_id是否为空,为空就首页高亮显示
选中的栏目ID等于请求变量,就高亮显示
:url(‘地址’,传给页面的参数)
eq比较标签 name变量的值等于value就输出
14、公共函数
在app/common.php文件下
15、首页
搜索
根据模糊查询,查询文章标题,给搜索form表单get传值,再用Request::param获取值
分类信息
存在栏目分类ID的话就根据栏目分类模型查询栏目分类ID的数据,没有栏目分类ID直接赋值全部文章
16、富文本编辑器
引入js文件
17、详情页
阅读量
点进详情页自增
根据id获取文章信息
控制器
收藏
点击收藏按钮,通过ajax传值,查询数据库有没有对应的数据,有的话就删除数据库数据,改变按钮样式内容,没有的话就新增数据库数据,改变按钮样式内容
评论
18、模板布局
导入layout,后面的内容都会布局在导入文件的{CONTENT}中
19、后台管理
用户列表当做后台首页
进入后台首页前验证是否登录,如果没有登录跳到后台登录页面
后台登录页面
检验登录数据,登录成功赋值session值
退出登录
20、用户列表
普通用户只能获取自己的用户信息,超级管理员获取所有用户信息
除了超级管理员,其他管理不显示
用户编辑
把用户ID在隐藏域传到服务器
用户编辑保存
用户删除
21、分类管理
只有超级管理员能显示
模型
控制器
分类管理首页
分类列表控制器
分类列表视图
编辑分类控制器
编辑操作控制器
删除分类控制器
添加分类控制器