Home  >  Article  >  Backend Development  >  How to implement ThinkPHP login function, thinkphp login implementation_PHP tutorial

How to implement ThinkPHP login function, thinkphp login implementation_PHP tutorial

WBOY
WBOYOriginal
2016-07-13 10:20:371623browse

How to implement ThinkPHP login function, thinkphp login implementation

The login function is a common function in PHP programming. The ThinkPHP example in this article mainly enters the homepage after successful registration and tells you the function of logged in user. The specific implementation steps are as follows:

Step one: Add:
to the config.php file

'USER_AUTH_KEY'=>'authId'

An example is as follows:

<?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'
);
?>

Step 2: Use:
in the insert() code in AdminAction.class.php

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

Save login username to session.

The complete implementation code is as follows:

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 "<script>alert('数据库添加成功');location.href='http://127.0.0.1/zhuce/index.php/index';</script>";
}
else throw_exception("<script>alert('数据库添加失败');history.back();</script>");
}

Step 3: Use if(!Session::is_set(C('USER_AUTH_KEY')))) in the IndexAction.class.php file to determine whether the user is logged in.
Session::get(C('USER_AUTH_KEY')) is to get the name of the logged in user.

The specific code is as follows:

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(); 
}

Step 4: Display the template on the homepage, the code is as follows:

<body>
{$msg}<br />
这是我的首页
</body>

Summary:

The login code revolves around writing sessions, judging sessions, and reading sessions.
To write a session, use: Session::set(C('USER_AUTH_KEY'),$user);
Use to judge session: if(!Session::is_set(C('USER_AUTH_KEY')));
To read the session: Session::get(C('USER_AUTH_KEY'))

I hope that the implementation method of the ThinkPHP login function described in this article can be helpful to everyone's ThinkPHP program design.

How can I develop the login permission function using Thinkphp?

It has its own rbac permission processing, please research it, it is very powerful

How to use thinkphp combined with js to realize the automatic login function of the webpage

No need for js, the user information is saved in the cookie when logging in, and then when the page is opened, it is enough to determine whether the user information in the cookie exists

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/866654.htmlTechArticleThinkPHP login function implementation method, thinkphp login implementation login function is a common function in PHP programming. The ThinkPHP example in this article mainly enters the homepage after successful registration and tells you...
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