系列文章目录

第一章 ThinkPhp5开发实战1:搭建环境配置TP5框架(持续更新收藏关注)

文章目录

系列文章目录前言一、选取合适的前端模板二、资源引用渲染前端1.导入框架引入资源文件2.渲染前端登陆界面

三、构造数据库登陆表字段1.设计数据库登录表

四、配置数据库连接、添加登录控制器1.TP5连接数据库2.添加验证码3.登录控制器check

五、登录演示总结

前言

本文主讲:ThinkPhp5开发实战系列续集:设计登录界面,完成登录操作 对于没有配置开发环境或者TP5框架的同学,请参考文章 [第一章 ThinkPhp5开发实战1:搭建环境配置TP5框架(持续更新收藏关注)]

文章会持续更新,期待你的关注收藏!是我前进的动力! 本系列文章将会把TP5框架的开发流程说清楚,用最朴实无华的文字描述,适合小白、新手入门 博主也正在学习中,如果你有更好的见解,欢迎评论交流!!

提示:以下是本篇文章正文内容

一、选取合适的前端模板

首先运行你的站点看看是否可以正常运行! 没问题我们继续,下载自己喜欢的登录模板

推荐这个如果不想用也可以换其他的

选择下载即可!

二、资源引用渲染前端

1.导入框架引入资源文件

1、打开根目录在\application\index下创建view文件夹存放视图模板(与控制器同级)

2、将下载好的资源文件中的html拖入进去 3、在view里面创建一个User文件夹,将index.html存入到User文件夹里面去,重命名为login.html 3、将下载好的资源样式文件样式拖入到\public\static里面去 4、修改资源引用,打开html文件将里面的资源引用路径改为__STATIC__开头 最后修改结果: login.html代码

管理后台登录

管理后台登录

登录

---

2.渲染前端登陆界面

接下来,完成渲染页面!

在application\index\controller创建2个php文件

User.php

Base.php

如图:

对于创建这个名字命名问题,请参考 本系列第一章

接下来打开编辑器 对base.php进行编辑:

namespace app\index\controller;

use think\Controller;

class Base extends Controller

{

}

对User.php进行编辑:

namespace app\index\controller;

use app\index\controller\Base;

use think\Db;

use think\Session;

class User extends Base

{

public function login()

{

//渲染

return $this->view->fetch('User/login');

}

}

由于这篇文章没能及时写完,现在把环境用在服务器上了,前面一样的配置,这里我讲一下服务器以宝塔为例的搭建方法:将网站目录的运行目录指定到public,取消写访问日志 将伪静态设置为: 好!配置完成了,尝试访问一下!

http://域名/index/User/login

访问结果如图: 没问题继续下一步!

三、构造数据库登陆表字段

1.设计数据库登录表

满足登录设计,最低要求两个字段,账号和密码Username 、password 创建SQL语句

ALTER TABLE `admin` ADD `id` INT NOT NULL AUTO_INCREMENT AFTER `password2`, ADD `username` VARCHAR(20) NOT NULL AFTER `id`, ADD `password` VARCHAR(20) NOT NULL AFTER `username`, ADD PRIMARY KEY (`id`);

插入账号密码

四、配置数据库连接、添加登录控制器

1.TP5连接数据库

我的数据库账号密码为:

youxi youxi qwer123456

连接路径为:application/里面的 database.php 将账号密码输入进去

2.添加验证码

验证码

添加输入框

3.登录控制器check

新建check方法,对接收的参数进行处理

// 处理登录逻辑

public function check()

{

$param = input('post.');

if(empty($param['username'])){

$this->error('用户名不能为空');

}

if(empty($param['password'])){

$this->error('密码不能为空');

}

//验证码

// $captcha=input("captcha");

$captcha=$param['verify'];

//验证

if (!captcha_check($captcha)){

$this->error("验证码错误");

// exit(json_encode(array('status'=>0,'msg'=>'验证码错误')));

}

//验证码

// 验证用户名

$has = Db::table('admin')->where('username',$param['username'])->find();

// dump($has);

if(empty($has)){

$this->error('用户名密码错误');

}

// 验证密码

if($has['password'] != $param['password']){

$this->error('用户名密码错误');

}

// return $has['password'];

//记录信息

Session::set("admin",$param['username']);

//

$this->success("登陆成功");

// 路径+控制器 +方法

}

前端login.html 表单请求

验证码

五、登录演示

登录成功!

总结

以上就是今天要讲的内容,将下载来的模板对静态资源做优化,采用MVC模式开发,实现前后端分离,调用tp框架的验证码,验证器 实现快速安全对接,最后构造的登录方法,将前端表单通过form提交到该方法里面!对数据进行验证!验证通过后使用Session记录跳转到主页面,主页面通过对该Session进行检查完成登录!这一节我们下次在讲!