邓_ ThinkPhp

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

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


1

‘USER_AUTH_KEY‘=>‘authId‘

 

示例如下:


1

2

3

4

5

6

7

8

9

10

11

12

13

14

<?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‘

);

?>

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


1

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

保存登录用户名到session。

完整实现代码如下:


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

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>");

}

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

具体代码如下:


1

2

3

4

5

6

7

8

9

10

11

12

13

14

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

}

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


1

2

3

4

<body>

{$msg}<br />

这是我的首页

</body>

小结:

登录代码都是围绕写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登录功能的实现方法全部内容。

--------------------------------------------------------------------------------------------------Deng

时间: 2024-11-08 19:19:40

邓_ ThinkPhp的相关文章

邓_ php SESSION

学会php session可以在很多地方使用,比如做一个后台登录的功能,要让程序记住用户的session,其实很简单,看了下面的文章你就明白了. PHP session用法其实很简单它可以把用户提交的数据以全局变量形式保存在一个session中并且会生成一个唯一的session_id,这样就是为了多了不会产生混乱了,并且session中同一浏览器同一站点只能有一个session_id,下面我们一起来看看关于session使用方法. SESSION (让数据在页面中持续有效的方法,存储在服务器端.

邓_ Php&#183;笔记本

-------------------------------------------------------------------------------------------- [PHP] -------------------------------------------------------------------------------------------- 001 ------------------------------------------------------

thinkphp 3.2.3整合ueditor 1.4,给上传的图片加水印

今天分享一下thinkphp 3.2.3整合ueditor 1.4,给上传的图片加水印.博主是新手,在这里卡住了很久(>_<) thinkphp 3.2.3整合ueditor 1.4 下载地址:https://github.com/Nintendov/Ueditor-thinkphp 下载下来,看着配置就可以了. 下面就是给上传图片加水印: (在做这步前,请确保ueditor已经正常工作) 我的工程目录如下: fonts里面的fz.fft为水印字体 images里面的logo.png为水印图片

ThinkPHP框架 _ 学习2

创建应用 一.将tp 框架的ThinkPHP文件放在新建的项目中二.在自己的项目中新建一个index.php文件,引进ThinkPHP.php文件 三,创建虚拟的主机,访问项目 创建虚拟主机的步骤 1.打开文件  C:\xampp\apache\conf\extra\httpd-vhosts.conf 2.复制一部分代码 ,且修改自己想要的访问域名,  这里需要注意一下路径的正确 3.打开文件    C:\Windows\System32\drivers\etc\hosts 在文件中添加自己要访

ThinkPHP框架 _ 学习9

[连接数据库配置] convertion.php config.php 在config.php做数据库连接配置(在convertion.php文件中选择内容复制,这些内容将覆盖convertion.php的配置) 制作model模型 a) model本身就是一个类文件 b) 数据库中的每个数据表都对应一个model模型文件 c) 最简单的数据model模型类  (注意命名空间,不能疏漏) 字段缓存设置 tp框架执行过程中会使用到数据表中的字段信息,通过sql语句可以查询"show colums

ThinkPHP框架 _ 学习1

一.为什么要学习框架??? 答: a. 可以减少写重复代码.b. 有利于分工合作,提高效率.前端负责模板开发,程序员负责后台逻辑程序的编写. c. 框架可以帮助我们快速.稳定.高效搭建程序系统 d. 框架的过程可以使我们集中于业务层面,而无需关心程序的底层架构. 1.了解MVC M - Model 模型                       工作:负责数据的操作V - View  视图(模板)            工作:负责前台页面显示C - Controller 控制器(模块)   工

thinkphp 学习_单一入口执行流程

(1)thinkphp 是一个 基于mvc开发和单一入口框架 其中index.php 是是一个web网站访问的入口文件: //部署单一入口文件 define('APP_PATH','./apps/'); require './ThinkPHP/ThinkPHP.php'; 浏览器访问的时候index.php时候,会自动生成apps项目文件;看了下,官方文档不建议在入口文件中做过多的操作,但可以重新定义一些系统常量:也即是修改一些系统配置例如 // 定义应用目录 define('APP_PATH'

ThinkPHP框架 _ 学习3

[路由解析] 通过url地址get参数找到指定的控制器,并进行对应方法调用请求 http://网址/index.php?m=模块名称&c=控制器&a=方法 以上url地址信息代码不够优雅.不安全. tp框架url地址可以由以下四种 http://网址/index.php?m=XX&c=XX&a=XX   基本get模式 http://网址/index.php/模块/控制器/操作方法  路径模式pathinfo http://网址/模块/控制器/操作方法           

Thinkphp学习——控制器_控制器定义

一般来说,ThinkPHP的控制器是一个类,而操作则是控制器类的一个公共方法. 下面就是一个典型的控制器类的定义: <?php namespace Home\Controller; use Think\Controller; class IndexController extends Controller { public function hello(){ echo 'hello,thinkphp!'; } } Home\IndexController类就代表了Home模块下的Index控制器