Home > PHP Framework > ThinkPHP > Detailed explanation of ThinkPHP login function example code

Detailed explanation of ThinkPHP login function example code

angryTom
Release: 2020-03-19 09:37:26
forward
3820 people have browsed it

The user login function is a common requirement in PHP programming. The ThinkPHP example in this article mainly completes the code writing for entering the home page after successful registration, and tells you how to implement the function of logging in users.

Detailed explanation of ThinkPHP login function example code

Detailed explanation of ThinkPHP login function example code

Specific steps:

Step one: Add:

'USER_AUTH_KEY'=>'authId'
Copy after login

to the config.php file. The example is as follows:

(recommended tutorial: thinkphp tutorial)

 'mysql',// 指定数据库是mysql
'DB_HOST'=> 'localhost',
'DB_NAME'=>'myuser', // 数据库名
'DB_USER'=>'root',
'DB_PWD'=>'', //您的数据库连接密码
'DB_PORT'=>'3306',
'DB_PREFIX'=>'think_',//数据表前缀
'USER_AUTH_KEY'=>'authId'
);
?>
Copy after login

Step 2: Use:

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

in the insert() code in AdminAction.class.php to save the login username to the 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)
{ // www.jbxue.com
//$_SESSION[C('USER_AUTH_KEY')]=$user;//不能用此句
Session::set(C('USER_AUTH_KEY'),$user);
//dump(Session::get('authId')); 
echo "<script>alert(&#39;数据库添加成功&#39;);location.href=&#39;http://127.0.0.1/zhuce/index.php/index&#39;;</script>";
}
else throw_exception("<script>alert(&#39;数据库添加失败&#39;);history.back();</script>");
}
Copy after login

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

Session::get(C(&#39;USER_AUTH_KEY&#39;))是获取登录用户的名。
Copy after login

The specific code is as follows:

public function index()
{ //www.jbxue.com
if(!Session::is_set(C(&#39;USER_AUTH_KEY&#39;)))
//if(!isset($_SESSION[&#39;USER_AUTH_KEY&#39;])||($_SESSION[&#39;USER_AUTH_KEY&#39;]==0))//不能用此句
{
$msg="用户没有登录"; 
}
else
{
$msg=Session::get(C(&#39;USER_AUTH_KEY&#39;)).&#39;欢迎你回来&#39;;
}
$this->assign(&#39;msg&#39;,$msg);
$this->display(); 
}
Copy after login

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

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

Summary:

The login code revolves around writing sessions, judging sessions, and reading sessions.

Use to write session: Session::set(C('USER_AUTH_KEY'),$user);

Use to judge session: if(!Session::is_set(C('USER_AUTH_KEY') ));

Read session: Session::get(C('USER_AUTH_KEY'))

PHP Chinese website, a large number of free MySQL video tutorials, welcome to learn online !

The above is the detailed content of Detailed explanation of ThinkPHP login function example code. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:csdn.net
Statement of this Website
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
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template