当前位置:  编程技术>php

ThinkPHP登录功能的实现方法

    来源: 互联网  发布时间:2014-08-26

    本文导语:  登陆功能是PHP程序设计中常见的功能。本文ThinkPHP实例主要完成注册成功后进入首页,并告诉你是登录用户的功能。具体实现步骤如下: 第一步:在config.php文件中加上: 'USER_AUTH_KEY'=>'authId' 示例如下: 第二步:在Ad...

登陆功能是PHP程序设计中常见的功能。本文ThinkPHP实例主要完成注册成功后进入首页,并告诉你是登录用户的功能。具体实现步骤如下:

第一步:在config.php文件中加上:

'USER_AUTH_KEY'=>'authId'

示例如下:


第二步:在AdminAction.class.php中的insert()代码中用:

Session::set(C('USER_AUTH_KEY'),$user);

保存登录用户名到session。

完整实现代码如下:

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)
{
//$_SESSION[C('USER_AUTH_KEY')]=$user;//不能用此句
Session::set(C('USER_AUTH_KEY'),$user);
//dump(Session::get('authId')); 
echo "alert('数据库添加成功');location.href='http://127.0.0.1/zhuce/index.php/index';";
}
else throw_exception("alert('数据库添加失败');history.back();");
}

第三步:在IndexAction.class.php文件中用if(!Session::is_set(C('USER_AUTH_KEY')))判断用户登录了没有。
Session::get(C('USER_AUTH_KEY'))是获取登录用户的名。

具体代码如下:

public function index()
{
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(); 
}

第四步:首页显示模板,代码如下:


{$msg}
这是我的首页

小结:

登录代码都是围绕写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'))

希望本文所述ThinkPHP登录功能的实现方法能对大家的ThinkPHP程序设计起到一定的帮助作用。


    
 
 

您可能感兴趣的文章:

  • ThinkPHP之用户注册登录留言完整实例
  • ThinkPHP实现事务回滚示例代码
  • ThinkPHP实现批量删除数据的代码实例
  • thinkphp分页保持搜索状态实现方法
  • Thinkphp实现MySQL读写分离操作示例
  • ThinkPHP框架实现session跨域问题的解决方法
  • 采用ThinkPHP中F方法实现快速缓存实例
  • linux iis7站长之家
  • ThinkPHP实现将SESSION存入MYSQL的方法
  • ThinkPHP实现一键清除缓存方法
  • 合并ThinkPHP配置文件以消除代码冗余的实现方法
  • ThinkPHP自动填充实现无限级分类的方法
  • Thinkphp使用mongodb数据库实现多条件查询方法
  • thinkphp实现数组分页示例
  • ThinkPHP调用百度翻译类实现在线翻译
  • ThinkPHP采用<volist>实现三级循环代码实例
  • ThinkPHP实现将本地文件打包成zip下载
  • 使用ThinkPHP+Uploadify实现图片上传功能
  • ThinkPHP实现跨模块调用操作方法概述
  • thinkphp实现面包屑导航(当前位置)例子分享
  • ThinkPHP结合ajax、Mysql实现的客户端通信功能代码示例
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • ThinkPHP学习笔记(一)ThinkPHP部署
  • ThinkPHP标签怎么制作?thinkphp标签制作实例教程
  • ThinkPHP之N方法实例教程
  • ThinkPHP3.1新特性之对分组支持的改进与完善概述
  • 轻量级PHP开发框架 ThinkPHP
  • 模仿 thinkphp 的 nodejs MVC 框架 Nstorm
  • ThinkPHP中的关联模型注意点
  • ThinkPHP CURD方法之order方法教程详解
  • ThinkPHP之A方法实例教程
  • ThinkPHP让分页保持搜索状态的方法
  • Thinkphp模板中截取字符串函数简介
  • ThinkPHP命令行工具 Tptool
  • ThinkPHP之foreach标签使用概述
  • ThinkPHP中自定义目录结构的设置方法
  • ThinkPHP模板中判断volist循环的最后一条记录的验证方法
  • 浅析ThinkPHP中execute和query方法的区别
  • ThinkPHP的模版中调用session数据的方法
  • ThinkPHP CURD方法中limit方法教程详解
  • ThinkPHP之N方法实例详解
  • ThinkPHP中URL路径访问与模块控制器之间的关系


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3