欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

ThinkPHP实现登录退出功能

程序员文章站 2024-03-11 13:03:43
本文实例为大家分享了thinkphp实现登录退出功能的具体代码,供大家参考,具体内容如下

本文实例为大家分享了thinkphp实现登录退出功能的具体代码,供大家参考,具体内容如下

<?php 
/**
 * 用户登陆与退出
 * 注册成功后,将页面跳转到login登陆页面
 * 当数据提交到登陆页面后,必须先执行验证码验证通过再执行登陆操作
 */
public function checkyzm($yzm){
 $verify=new \think\verify();//实例化tp自带的verify方法
 if($verify->check($yzm)){//调用check方法
  return true;
 }else{
  echo '验证码错误';
  exit();
 }
}

public function login(){
 if(!is_post){
  $this->display();
 }else{
  //若验证码验证通过
  if($this->checkyzm(i('post.yzm'))){
   $username=i('post.username');
   $user=d( ' user ' )->where(" username='$username' ")->find();
   //post过来的password拼接盐md5后密码=数据库的密码,则通过
   if(md5( i( ' post.password ' ) . $user[ ' salt ' ])===$user['password']{
    cookie('username' , $userp[ ' username ' ]);//写入cookie
    $this->redirect('/');//跳转到首页
   }else{
    echo '用户名或密码不对';
   }
  }
 }
}


/**v层
 * 退出登陆
 * 读取cookie $think.cookie
 */
//若没有cookie数据
您好欢迎观临
<if condition="$think.cookie.username eq null">
<a href="{:u('home/user/login')}" rel="external nofollow" rel="external nofollow" style="color:#50884b">登陆</a> |
<a href="{:u('home/user/reg')}" rel="external nofollow" style="color:#50884b">免费注册</a> |
<else />
{$think.cookie.username}|
<<a href="{:u('home/user/login')}" rel="external nofollow" rel="external nofollow" style="color:#50884b">退出</a>
 </if>


 /**
 * 退出方法
 * 1,cookie设为null,删除cookie
 * 2. 跳转到首页
 */
 public function logout(){
  cookie('username' , null);
  $this->redirect('/');
 }

 ?>}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。