admin管理员组

文章数量:1530018

ThinkPHP实现用户注册、登录模块

一、开发环境

1、Windows+Apache+MySQL+PHP的环境。

2、文本编辑器:Sublime。

二、主要技术

PHP+ThinkPHP3.2.3+HTML+CSS

三、效果图与具体步骤


实现效果图,如图1、2、3所示。

图1 效果图(登录)

 
 

图2 效果图(注册)

 


图3 效果图(用户信息)

3.1、文件目录设置

(1)创建项目文件夹

 在网站根目录(www目录)下创建一个名为“mytp”的文件夹。

 在“mytp”文件夹目录下创建一个名为“login”的文件夹,用来放置项目文件。

(2)引入ThinkPHP核心文件

下载ThinkPHP3.2.3文件包(网址:http://www.thinkphp/),并将其核心包放入“mytp”文件夹中。

3.2、创建项目入口文件

(1)创建html文件

在“login”文件夹下创建一个名为“index.html”的文件作为项目的入口文件。

(2)文件配置

在“index.html”文件中引入“Think.php”文件,并开启开发者模式。配置信息如下:

<?php

// 程序入口文件

define('APP_DEBUG',true);// 开发调试模式

require'../ThinkPHP/ThinkPHP.php';

?>

(2)运行文件

在浏览器地址栏内输入“localhost:8080/mytp/login/”,回车,然后可以看到ThinkPHP的欢迎界面(如图4所示),并且可以看到在“login”目录下会自动生成项目文件夹(如图5所示)。

图4 验证结果图

 

图5 验证结果图

 

3.3、配置连接数据库信息

(1)配置代码

打开目录“mytp/login/Home/Conf”下的“config.php”文件,并在其中配置数据库相关信息。

<?php

returnarray(

         //'配置项'=>'配置值'

         'APP_DEBUG'=>true,

         'DB_TYPE'=>'mysql',

         'DB_HOST'=>'localhost',

         'DB_NAME'=>'thinkphp',

         'DB_USER'=>'root',

         'DB_PWD'=>'',

         'DB_PORT'=>'3307',

         'DB_PREFIX'=>'think_',

         'SHOW_PAGE_TRACE'=>true  // 显示页面的trace信息

);

(2)配置说明

'APP_DEBUG'   开发者调试模式 

  'DB_TYPE'    数据库类型

  'DB_HOST'    数据库主机名

  'DB_NAME'    所要连接的数据库名

  'DB_USER'    数据库用户名

  'DB_PWD'     数据库密码

  'DB_PORT'    数据库端口号

  'DB_PREFIX'  所要连接的数据库表前缀

  'SHOW_PAGE_TRACE'  是否显示页面的trace信息

3.4、数据库及数据表的创建

(1)创建数据库

创建一个名为“thinkphp”的数据库。

(2)创建数据表

在数据库“thinkphp”中创建名为“think_user”的数据表,表结构如图6所示。

图6 数据表结构

 

(3)添加数据

在数据表“think_user”中添加几条数据用于以后的测试。 

3.5、控制器功能代码实现

(1)打开控制器文件

打开“mytp/login/Home/Controller/”目录下的“IndexController.class.php”文件。

(2)登录界面显示

把“index”下的代码清空,写入下列代码用于显示登录页面。

publicfunction index(){

        $this->display(); 

    }

(3)登录功能实现

主要代码如下:

// 登录功能

publicfunction denglu(){

    $uname=$_POST['uname']; // 获取用户名

    $upwd=$_POST['upwd'];   // 获取密码

    if(isset($_POST['sub'])){

    if(!empty($uname)&&!empty($upwd)){//如果用户名和密码非空

          $user=M();// 实例化模型

         $select=$user->query("select *from think_user wherename='$uname' and pwd='$upwd'"); // 执行查询

          if($select){// 如果存在该用户

          //将用户名和密码保存在session

         session_start();

         $_SESSION['uname']=$uname;

         $_SESSION['upwd']=$upwd;

          //跳转到用户中心

         $this->redirect('Index/show','',5,'登录成功!前往用户中心

本文标签: 用户注册模块thinkphp