`

TP5 用户的页面操作

阅读更多

测试数据:

CREATE TABLE IF NOT EXISTS `tb_user` (
  `id` int(8) unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(255) DEFAULT NULL,
  `password` varchar(255) DEFAULT NULL,
  `logintime` datetime DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=4 ;

INSERT INTO `tb_user` (`id`, `name`, `password`, `logintime`) VALUES
(1, 'aaa', '123456', '2017-07-24 18:07:47'),
(2, 'bbb', '123456', '2017-07-24 18:03:22'),
(3, 'ccc', '123456', '2017-07-24 18:08:25');

 

控制器:

<?php
namespace app\index\controller;
use think\Controller;
use think\Session;
class Index extends Controller
{
	protected $beforeActionList = [
       'gosession' =>  ['except'=>'login,login_all'], //tp前置方法,不管执行那个方法,都要先执行gosession , 除了login,login_all方法
    ];
    //定义前置控制器
    public function gosession()
    {   
        $id=Session::get('id');
    	if(!$id)
    	{
    		$this->error('请先登录','login');
    	}
    }
    //用户管理首页, 登录成功后的页面
    public function index()
    {
        $db = db('user');
    	$data = $db->select();
		return $this->fetch('index',['data'=>$data]);
    }
    //退出登录
    public function login_out()
    {
    	session::clear();
        $this->success('退出成功','login');
    }
    //登录页面
    public function login()
    {
    	return $this->fetch('login');
    }
    //用户登录方法
    public function login_all()
    {
    	$db = db('user');
    	$name = input('post.name');
     	$password = input('post.password');
        // 查询数据
		$list = $db->where(['name'=>$name,'password'=>$password])->find();
        //如果存在就存入session,并且跳转首页
		if($list)
		{	
			Session::set('name',$name);
			Session::set('id',$list['id']);
			$db->where(['name'=>$name,'password'=>$password])->update(['logintime'=>date("Y-m-d H:i:s")]);
			$this->redirect('index');
		}else{
			$this->error('登录失败','login');
		}
    }
    //用户添加页面
    public function add()
    {
    	return $this->fetch('add');
    }
    //用户添加方法
    public function add_all()
    {
        $name = input('post.name');
        $password = input('post.password');
        $db = db('user');
        //添加用户
        $list = $db->insert(['name' => $name, 'password' => $password]);
        //判断添加用户是否成功
        if($list){
            $this->success('添加成功!','index');
        }else{
            $this->error('添加错误!','index');
        }
    }
    //用户修改页面
    public function update($id)
    {     
        $db = db('user');
        $data = $db->where(['id'=>$id])->find();
    	return $this->fetch('update',['data'=>$data]);
    }
    //用户修改方法
    public function update_all()
    {
        $db = db('user');
        $name = input('name');
        $id = input('id');
        $password = input('password');
        $upd = $db->where(['id'=>$id])->update(['name'=>$name,'password'=>$password]);
        if($upd){
            echo '修改成功';
            $this->redirect('index');
        }else{
            echo '修改失败';
        }
    }
    //删除用户方法
    public function delete($id)
    {
        $db = db('user');
        $del=$db->where(['id' => $id])->delete();
        $this->redirect('index');
    }
}

 

视图->用户登陆:

<!DOCTYPE html>
<html lang="zh">
<head>
<meta charset="UTF-8">
<title>用户登陆</title>
</head>
<body>
<h3>用户登陆</h3>
<form method="post" action="{:url('login_all')}">  
	<input type="text" required="required" placeholder="用户名" name="name"></input>  
	<input type="password" required="required" placeholder="密码" name="password"></input>  
	<button type="submit">登录</button>  
</form>
</body>
</html>

效果图:

 

视图->显示用户列表:

<!DOCTYPE html>
<html lang="zh">
<head>
<meta charset="UTF-8">
<title>显示用户列表</title>
</head>
<body>
<h3>welcome:<font style=" color: red;">{$_SESSION['think']['name']} <a href="{:url('login_out')}">退出登录</a></font></h3>
<table>  
	<caption>用户管理</caption>   
	<tr>  
		<th>ID</th>
		<th>用户名 </th>
		<th>登录时间</th>
		<th>操作</th>
	</tr>
	{volist name="data" id="vo"}
	<tr>  
		<td>{$vo.id}</td>
		<td>{$vo.name}</td>
		<td>{$vo.logintime}</td>
		<td><a href="add">添加</a>|<a href="{:url('update')}?id={$vo.id}">修改</a>|<a href="{:url('delete')}?id={$vo.id}">删除</a></td>
	</tr>
	{/volist} 
</table> 
</body>
</html>

效果图:

 

视图->添加用户:

<!DOCTYPE html>
<html lang="zh">
<head>
<meta charset="UTF-8">
<title>添加用户</title>
</head>
<body>
<h3>添加用户</h3>
<form method="post" action="{:url('add_all')}">  
	<input type="text" required="required" placeholder="用户名" name="name"></input>  
	<input type="password" required="required" placeholder="密码" name="password"></input>  
	<button type="submit">提交</button>
</form>	
</body>
</html>

效果图:

 

视图->修改用户:

<!DOCTYPE html>
<html lang="zh">
<head>
<meta charset="UTF-8">
<title>修改用户</title>
</head>
<body>
<h3>修改用户ID:{$data['id']}</h3>
<form method="post" action="update_all">  
	<input type="text" required="required" placeholder="用户名" name="name" value="{$data['name']}"></input>  
	<input type="password" required="required" placeholder="密码" name="password"></input>
	<input type="text" hidden="false" name="id" value="{$data['id']}">  
	<button type="submit">提交</button>  
</form>  
</body>
</html>

 效果图:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 大小: 6.9 KB
  • 大小: 10.9 KB
  • 大小: 16.9 KB
  • 大小: 17.7 KB
1
1
分享到:
评论

相关推荐

    DSShop单店铺TP5框架B2C单用户开源商城源码 v2.1.1.zip

    DSShop单店铺TP5框架B2C单用户开源商城源码 v2.1.1 更新日志 1. 修复163邮箱乱码问题 2. 修复用户中心通过缓存删除单条浏览记录 3. PC端买家中心界面美化 4. 依据电商法行业规范新增单独的营业执照页 5. 修复...

    TP 权限管理

    用TP写的权限类,包括用户管理,角色管理,权限管理,和添加用户,添加角色,添加权限,修改角色,修改权限等等!

    TP5(thinkPHP5)框架基于ajax与后台数据交互操作简单示例

    本文实例讲述了TP5(thinkPHP5)框架基于ajax与后台数据交互操作。分享给大家供大家参考,具体如下: Ajax最大的一点是页面无刷新,在页面内与服务器通信,给用户的体验非常好。可以把以前一些服务器负担的工作转嫁到...

    DSmall TP框架多商户B2B2C商城系统20180320版

    网站功能包含:网站设置、帐号同步、上传设置、权限设置、地区管理、数据备份、操作日志、 分类管理、品牌管理、店铺等级、店铺分类、店铺帮助、会员管理、会员级别、积分管理、预存款、 实物订单、虚拟订单、退货...

    DSShop单用户TP5框架B2C开源商城源码-PHP

    5. 修复限时折扣 商品列表页面 商品名称带有单引号会报错 不显示商品列表的问题 6. 规范语言包 7. 新增会员等级操作日志语言项 8. 添加商品详情页面 限时折扣活动没有设置标题的默认标题 9. 修复获取在售商品会获取...

    TP-WR841N_V3.2编程器固件.rar

    TP-Link路由器的硬件版本,可以在底部标签上查看到,Ver后面的就是硬件版本,如下图所示。 在底部标签中查看硬件版本 第二步、下载升级软件 1、进入TL-WR841N固件下载页面,然后下载对应版本的升级软件。 重要提示...

    thinkphp5.0-php登录超时检测功能的类

    php登录超时检测功能实例详解的相关资料(以thinkphp5.0版本为例),php登录超时问题,当用户超过一定时间没有操作页面时自动退出登录,原理是通过js进行访问判断的!

    浏览器 Vivaldi_TP_1.0.83.38

    这款浏览器支持Windows、Mac和Linux等多种操作系统,虽然目前还处于早期开发阶段,但是已提供了Opera用户耳熟能详的很多功能。它支持鼠标手势浏览和用户们熟悉的“快速拨号”(Speed Dial)界面,可以在新页面上显示...

    ThinkPHP实现登录退出功能

    本文实例为大家分享了ThinkPHP实现登录退出功能的具体代码,供大家参考,具体内容...//实例化TP自带的Verify方法 if($verify-&gt;check($yzm)){//调用check方法 return true; }else{ echo '验证码错误'; exit(); }

    S5324的WEB面

    步骤5 执行命令local-user 123 ftp-directory flash:,配置FTP 用户的访问路径。 步骤6 执行命令local-user 123 service-type ftp,配置FTP 登录用户的服务类型。 步骤7 在PC 的cmd 视图下执行命令ftp ip-address,...

    微信网页授权并获取用户信息的方法

    并且很多涉及安全的操作我们必须要先获取用户信息才能继续,本文章简单介绍了微信授权流程,并通过申请微信测试账号来模拟网页授权,用户在授权页点击确定登录后获取用户信息并显示在前端页面,最后效果如下图 ...

    微信小程序实现获取用户信息并存入数据库操作示例

    主要介绍了微信小程序实现获取用户信息并存入数据库操作,涉及微信小程序wx.request后台数据交互及php数据存储相关操作技巧,需要的朋友可以参考下

    ThinkPHP3.2仿京东商城视频教程实战课程,ThinkPHP3.2开发大型商城项目实战视频

    5.tp中使用AJAX提交表单 6.把模板套到项目中 7. 管理员的登录 第二天 1.锁机制 2.时间插件、XSS过滤、在线编辑器使用 3.商品的删除 4.商品的修改完成-一张表的操作全部完成 5.tp中使用AJAX提交表单 6.把模板套到项目...

    Thinkphp家教教育服务网站平台源码 带后台手机站.zip

     TP框架为国内PHP开发框架使用人数较多、操作简洁的轻量级开发框架,开发模式采用MVC模式  更多的功能比如(会员管理、订单管理、预约管理、服务评价、订单售后等多种功能)  更新日志:  1:更新后台管理程序,...

    商城(thinkphp5)

    30. 新增 后台用户操作日志 31. 优化 七牛云图片同步删除 32. 新增 首页增加常用菜单功能 33. 优化 订单流程计算更加稳定合理 34. 优化 营销商品调用弹框 35. 优化 商品视频上传增加外链 36、优化 后台数据列表的...

    奇乐自媒体新闻系统免费版 v1.0.7.zip

    奇乐自媒体新闻系统是个tp开发的新闻管理系统,具有操作简单、功能强大、稳定性好、扩展性及安全性强,前台与后台采用隔离方式,模板化设计,让只要你会前端就可以做一个新闻网站!后台设计简单明了,用户一看就会...

    thinkphp 5.0开源商城系统,开源多用户系统

    Thinkphp因其优秀的架构设计、通俗易懂的教程以及超级强大的操作数据库而成为国内最流行的一款开源框架,而为API开发而生thinkphp 5的发布更是受到广大企业及开发者的欢迎,WSTMart电子商务系统是商淘软件下第一款...

    22春“计算机科学与技术”专业《计算机网络》在线作业含答案参考5.docx

    Web页面通常利用超文本方式进行组织,这些相互链接的页面必须放置在用户主机上。( ) A.错误 B.正确 参考答案:A 4. 域名服务DNS的主要功能为查询主机的MAC地址。( ) A.错误 B.正确 参考答案:A 5. 以下哪一种方式是...

    基于ASP.NET 的网上留言板系统的设计与实现-毕业论文

    技术非常灵活,适合于编写动态Web 页面。因此,本文选择ASP.NET 技术来构建论坛系 统,采用SQLServer 2000 数据库管理系统作为数据库服务器,客户端通过IE 或其它WWW 浏览器来使用系统所提供的所有功能。 2. 系统...

Global site tag (gtag.js) - Google Analytics