您的位置:首页 > 编程语言 > PHP开发

ThinkPHP3.2.3 验证码 上传图片 制作缩略图 2.为自己的项目封装功能类 利用Page工具类实现分页效果 后台管理员登录系统实现

2019-03-22 22:15 911 查看

1.生成验证码
在ManagerController控制器的verifyImg操作方法里边实现验证码效果
验证码字体的来源:

两种方式实例化Verify对象:完全限定名称、空间类元素引入


访问验证码效果:

2.显示验证码
在View/Manager/login.html模板中显示验证码
<img src=”/shop/index.php/Admin/Manager/verifyImg” alt=”” />

显示验证码 和 onclick点击事件实现:


3.校验验证码
用户登录form表单要给本身的Manager/login进行提交:

在Manager/login方法里边验证验证码是否正确:

四.附件上传
涉及技术点:
<form enctype=”multipart/form-data”>
<input type=”file”>
</form>
$_FILES接收附件信息
name size tmp_name type error
(error:0没有问题 1/2大小超限制 3只上传部分附件 4没有上传附件)
move_uploaded_file(临时路径名附件,真实路径名附件)

为添加商品表单页面增加一个上传图片的文件域:

在控制器里边接收到的附件信息:

Upload类的uploadOne()方法执行成功后会返回一些附件保存到服务器的相关信息:名字和路径

在Goods/tianjia操作方法里边实现图片的上传逻辑:

五.缩略图
原理:
把一个已有图片的打开
裁剪出已有图片的某个部分,该部分经过放大、缩小的处理,之后再把处理好的部分放到另外一个图片里边显示出来。具体使用imagecopyresampled函数实现

涉及技术点:
打开一个已有图片:imagecreatefromjpeg() imagecreatefrompng()
创建一个目标图片(白板):imagecreatetruecolor()
对图片的一部分进行缩放处理:imagecopyresampled();

在Goods/tianjia操作方法里边实现给原图制作“缩略图”逻辑:


在index.php文件设置一个网站域名常量(以方便上传图片通过绝对路由地址访问):

在模板中把上传好的图片给显示出来


六.数据分页
1.给tp框架项目制作工具类
给shop项目自定义Page工具类:

命名空间的名称与上级目录tools一致
原因:当前Page.class.php类文件会被自动加载机制引入
在引入的同时会把"tools"变为文件的上级目录,进而获得该Page类文件

制作Page分页工具类

2.利用分页工具类实现分页效果
数据分页效果:

//tp框架封装好的方法:count()/max()/min()/arg()/sum()
//$z = $goods->where(‘goods_id>100’) -> max(‘goods_price’);
//SELECT MAX(goods_price) AS tp_max FROM

sw_goods
WHERE ( goods_id>100 ) LIMIT 1
七.登录功能
实现步骤:
① 收集表单信息
② 校验验证码
③ 校验用户名和密码
④ 把用户名信息给session持久化
⑤ 页面跳转到后台品字首页
tp框架中session和cookie的操作:

在Manager/login方法里边实现登录系统的逻辑:


在ManagerModel里边利用一个专门方法实现用户名和密码校验:

在后台页面显示用户名和退出系统超链接:

在Manager/logout里边实现退出系统逻辑:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐