`

ThinkPHP登录功能实例代码详解

    博客分类:
  • php
阅读更多

分享下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模型实例详解【离线版-时时更新,值得收藏与学习】

    ThinkPHP5模型实例详解【离线版-时时更新,值得收藏与学习】

    thinkPHP分页功能实例详解

    在本实例中,我们主要探讨的是ThinkPHP框架中的分页功能。ThinkPHP是一个流行的PHP开发框架,它提供了许多便利的功能,其中包括对数据进行分页显示的能力。这在处理大量数据时非常有用,可以提高用户体验并减轻...

    thinkphp5 留言板代码 登录 发表留言等功能示例

    【ThinkPHP5 留言板系统详解】 ThinkPHP5 是一个基于 PHP 开发的轻量级、高性能的 MVC 框架,广泛应用于各种 Web 应用开发。本示例是一个基本的留言板系统的实现,涵盖了用户登录、发表留言等功能,非常适合初学者...

    ThinkPHP3.1+实例包

    《ThinkPHP3.1实战教程:基础操作案例详解》 ThinkPHP是一款国内广泛使用的开源PHP框架,尤其在中小企业和开发者中备受青睐。本教程聚焦于ThinkPHP3.1版本,该版本以其简洁、高效的特性,为开发者提供了强大的开发...

    ThinkPHP权限认证Auth实例详解

    本文深入剖析了ThinkPHP权限认证Auth的实现原理与方法,通过实例代码详细阐述了如何使用ThinkPHP的Auth模块来实现对用户权限的管理。 首先,要实现用户权限管理,必须设计相应的数据库结构,ThinkPHP使用三个主要的...

    thinkPHP交易详情查询功能详解

    在上面的代码中,我们首先实例化了对应的模型,并定义了查询条件。然后使用`join()`方法添加联接,`where()`方法设置过滤条件,`field()`指定要获取的字段,最后`order()`指定排序方式。`select()`方法执行查询并...

    thinkPHP 导入excel详解实例

    通过以上步骤,你可以在ThinkPHP框架中实现Excel文件的导入功能。这个过程涉及到文件上传、第三方库的使用以及数据处理与入库等多个环节,理解并掌握这些知识点对于开发高效的企业级应用至关重要。

    PHP项目开发实战ThinkPHP_O2O平台网站_编程案例解析实例详解课程教程.pdf

    在实现这些功能时,开发者需要熟练掌握PHP编程语言,理解ThinkPHP框架的MVC(Model-View-Controller)架构,以及如何使用MySQL进行数据操作。ThinkPHP框架提供了一套便捷的开发工具和方法,使得开发者能够快速构建和...

    thinkphp最新简单后台代码

    总结,"thinkphp最新简单后台代码"是一个基于ThinkPHP3.2框架的权限后台系统实例,它展示了如何构建一个基础的权限管理系统,涵盖了权限分配、角色管理、用户认证等核心功能。通过学习和实践,开发者可以快速掌握...

    ThinkPHP5函数详解系列

    《ThinkPHP5函数详解系列》是一份专为ThinkPHP5框架初学者准备的详细学习资料。这个CHM类型的文件包含了丰富的函数用法和实践指导,是深入理解ThinkPHP5核心功能的重要参考资料。为了帮助读者更好地理解和掌握...

    ThinkPHP之R方法实例详解

    ### ThinkPHP之R方法实例详解 #### 一、引言 在ThinkPHP框架中,R方法是一种非常实用的功能,它允许开发者在不同的控制器之间进行方法的调用,从而实现代码的复用和逻辑的分离。本文将详细介绍ThinkPHP中的R方法,...

    thinkphp 开发实例

    ### ThinkPHP开发实例详解 #### 一、ThinkPHP简介 ThinkPHP是一款开源的PHP框架,遵循MVC设计模式。它简化了PHP应用的开发过程,提供了丰富的功能支持,包括但不限于ORM、缓存处理、安全机制等。对于初学者而言,...

    thinkphp命名空间用法实例详解

    本文实例讲述了thinkphp命名空间用法。分享给大家供大家参考,具体如下: 新版本(3.2)中采用命名空间的方式定义和加载类库文件,解决多个模块之间的冲突问题,并实现了更加高效的自动加载机制。 需要给类库定义...

    thinkphp rbac架构代码

    **ThinkPHP RBAC架构代码详解** 在Web开发中,权限管理是不可或缺的一部分,尤其是对于大型企业级应用。Role-Based Access Control(RBAC)基于角色的访问控制是一种有效的权限管理模式,它将用户与权限通过角色...

    基于ThinkPHP实现的日历功能实例详解

    在本实例中,我们将深入探讨...开发者可以通过这个实例学习到如何在ThinkPHP中组织代码,理解框架的基本使用方法,以及如何设计和实现一个完整的功能模块。这对于提升PHP开发技能和深入理解Web开发流程是非常有价值的。

    ThinkPHP之M方法实例详解

    D方法的强大则体现在你封装的自定义模型类有多强,不过随着新版ThinkPHP框架的基础模型类的功能越来越强大,M方法也比D方法越来越实用了。 M方法的调用格式: M(‘[基础模型名:]模型名’,’数据表前缀’,’数据库...

    thinkphp3.2.3+ueditor实例

    《ThinkPHP3.2.3结合UEditor实现文章发布系统详解》 对于初学者来说,构建一个功能完备的文章发布系统是提升技术能力的重要步骤。在本文中,我们将深入探讨如何利用ThinkPHP3.2.3框架与UEditor编辑器来创建这样一个...

Global site tag (gtag.js) - Google Analytics