分享下ThinkPHP登录功能的实现方法,是采用ThinkPHP进行会员系统开发所必备的重要功能,需要的朋友可以参考下
登陆功能是PHP程序设计中常见的功能。
本文ThinkPHP实例主要完成注册成功后进入首页,并告诉你是登录用户的功能。
具体步骤:
第一步:在config.php文件中加上:
'USER_AUTH_KEY'=>'authId'
示例如下:
<?php if(!defined('THINK_PATH')) exit(); return array( // 定义数据库连接信息 'DB_TYPE'=> 'mysql',// 指定数据库是mysql 'DB_HOST'=> 'localhost', 'DB_NAME'=>'myuser', // 数据库名 'DB_USER'=>'root', 'DB_PWD'=>'', //您的数据库连接密码 'DB_PORT'=>'3306', 'DB_PREFIX'=>'think_',//数据表前缀 'USER_AUTH_KEY'=>'authId' ); ?>
第二步:在AdminAction.class.php中的insert()代码中用:
Session::set(C('USER_AUTH_KEY'),$user);
保存登录用户名到session。(php教程)
完整实现代码如下:
public function insert() { header('Content-Type:text/html; charset=utf-8');//防止出现乱码 $user=$_POST['user']; $this->verifyCheck(); $Pagemodel = D("user"); $vo = $Pagemodel->create(); if(false === $vo) die($Pagemodel->getError()); $topicid = $Pagemodel->add(); //add方法会返回新添加的记录的主键值 if($topicid) { // www.jbxue.com //$_SESSION[C('USER_AUTH_KEY')]=$user;//不能用此句 Session::set(C('USER_AUTH_KEY'),$user); //dump(Session::get('authId')); echo "<script>alert('数据库添加成功');location.href='http://127.0.0.1/zhuce/index.php/index';</script>"; } else throw_exception("<script>alert('数据库添加失败');history.back();</script>"); }
第三步:在IndexAction.class.php文件中用if(!Session::is_set(C('USER_AUTH_KEY')))判断用户登录了没有。
Session::get(C('USER_AUTH_KEY'))是获取登录用户的名。
具体代码如下:
public function index() { //www.jbxue.com if(!Session::is_set(C('USER_AUTH_KEY'))) //if(!isset($_SESSION['USER_AUTH_KEY'])||($_SESSION['USER_AUTH_KEY']==0))//不能用此句 { $msg="用户没有登录"; } else { $msg=Session::get(C('USER_AUTH_KEY')).'欢迎你回来'; } $this->assign('msg',$msg); $this->display(); }
第四步:首页显示模板,代码如下:
<body> {$msg}<br /> 这是我的首页 </body>
总结:
登录代码都是围绕写session,判断session,读session展开。
写session用:Session::set(C('USER_AUTH_KEY'),$user);
判断session用:if(!Session::is_set(C('USER_AUTH_KEY')));
读session用:Session::get(C('USER_AUTH_KEY'))
相关推荐
ThinkPHP5模型实例详解【离线版-时时更新,值得收藏与学习】
在本实例中,我们主要探讨的是ThinkPHP框架中的分页功能。ThinkPHP是一个流行的PHP开发框架,它提供了许多便利的功能,其中包括对数据进行分页显示的能力。这在处理大量数据时非常有用,可以提高用户体验并减轻...
【ThinkPHP5 留言板系统详解】 ThinkPHP5 是一个基于 PHP 开发的轻量级、高性能的 MVC 框架,广泛应用于各种 Web 应用开发。本示例是一个基本的留言板系统的实现,涵盖了用户登录、发表留言等功能,非常适合初学者...
《ThinkPHP3.1实战教程:基础操作案例详解》 ThinkPHP是一款国内广泛使用的开源PHP框架,尤其在中小企业和开发者中备受青睐。本教程聚焦于ThinkPHP3.1版本,该版本以其简洁、高效的特性,为开发者提供了强大的开发...
本文深入剖析了ThinkPHP权限认证Auth的实现原理与方法,通过实例代码详细阐述了如何使用ThinkPHP的Auth模块来实现对用户权限的管理。 首先,要实现用户权限管理,必须设计相应的数据库结构,ThinkPHP使用三个主要的...
在上面的代码中,我们首先实例化了对应的模型,并定义了查询条件。然后使用`join()`方法添加联接,`where()`方法设置过滤条件,`field()`指定要获取的字段,最后`order()`指定排序方式。`select()`方法执行查询并...
通过以上步骤,你可以在ThinkPHP框架中实现Excel文件的导入功能。这个过程涉及到文件上传、第三方库的使用以及数据处理与入库等多个环节,理解并掌握这些知识点对于开发高效的企业级应用至关重要。
在实现这些功能时,开发者需要熟练掌握PHP编程语言,理解ThinkPHP框架的MVC(Model-View-Controller)架构,以及如何使用MySQL进行数据操作。ThinkPHP框架提供了一套便捷的开发工具和方法,使得开发者能够快速构建和...
总结,"thinkphp最新简单后台代码"是一个基于ThinkPHP3.2框架的权限后台系统实例,它展示了如何构建一个基础的权限管理系统,涵盖了权限分配、角色管理、用户认证等核心功能。通过学习和实践,开发者可以快速掌握...
《ThinkPHP5函数详解系列》是一份专为ThinkPHP5框架初学者准备的详细学习资料。这个CHM类型的文件包含了丰富的函数用法和实践指导,是深入理解ThinkPHP5核心功能的重要参考资料。为了帮助读者更好地理解和掌握...
### ThinkPHP之R方法实例详解 #### 一、引言 在ThinkPHP框架中,R方法是一种非常实用的功能,它允许开发者在不同的控制器之间进行方法的调用,从而实现代码的复用和逻辑的分离。本文将详细介绍ThinkPHP中的R方法,...
### ThinkPHP开发实例详解 #### 一、ThinkPHP简介 ThinkPHP是一款开源的PHP框架,遵循MVC设计模式。它简化了PHP应用的开发过程,提供了丰富的功能支持,包括但不限于ORM、缓存处理、安全机制等。对于初学者而言,...
本文实例讲述了thinkphp命名空间用法。分享给大家供大家参考,具体如下: 新版本(3.2)中采用命名空间的方式定义和加载类库文件,解决多个模块之间的冲突问题,并实现了更加高效的自动加载机制。 需要给类库定义...
**ThinkPHP RBAC架构代码详解** 在Web开发中,权限管理是不可或缺的一部分,尤其是对于大型企业级应用。Role-Based Access Control(RBAC)基于角色的访问控制是一种有效的权限管理模式,它将用户与权限通过角色...
在本实例中,我们将深入探讨...开发者可以通过这个实例学习到如何在ThinkPHP中组织代码,理解框架的基本使用方法,以及如何设计和实现一个完整的功能模块。这对于提升PHP开发技能和深入理解Web开发流程是非常有价值的。
D方法的强大则体现在你封装的自定义模型类有多强,不过随着新版ThinkPHP框架的基础模型类的功能越来越强大,M方法也比D方法越来越实用了。 M方法的调用格式: M(‘[基础模型名:]模型名’,’数据表前缀’,’数据库...
《ThinkPHP3.2.3结合UEditor实现文章发布系统详解》 对于初学者来说,构建一个功能完备的文章发布系统是提升技术能力的重要步骤。在本文中,我们将深入探讨如何利用ThinkPHP3.2.3框架与UEditor编辑器来创建这样一个...