Home  >  Article  >  Backend Development  >  Share a detailed explanation of an example of login and logout using ThinkPHP

Share a detailed explanation of an example of login and logout using ThinkPHP

零下一度
零下一度Original
2017-07-02 11:42:021306browse

This article mainly introduces the Login and Logout function of ThinkPHP Logout

The example of this article shares the specific code for ThinkPHP to realize the login and logout function for your reference. The specific content is as follows


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

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


/**V层
 * 退出登陆
 * 读取cookie $Think.cookie
 */
//若没有cookie数据
您好欢迎观临
<if condition="$Think.cookie.username eq null">
<a href="{:U(&#39;Home/User/login&#39;)}" rel="external nofollow" rel="external nofollow" style="color:#50884b">登陆</a> |
<a href="{:U(&#39;Home/User/reg&#39;)}" rel="external nofollow" style="color:#50884b">免费注册</a> |
<else />
{$Think.cookie.username}|
<<a href="{:U(&#39;Home/User/login&#39;)}" rel="external nofollow" rel="external nofollow" style="color:#50884b">退出</a>
 </if>


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

 ?>}

The above is the detailed content of Share a detailed explanation of an example of login and logout using ThinkPHP. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn