注册php tp5,ThinkPHP5开发(一)实现登录功能详解(图)

主要从这三个方面入手:

数据库

PHP代码

HTML代码&ThinkPHP视图模板代码

数据库使用mysql5.7。并且使用PHP最新版本PHP7,apache2.4,Ubuntu16.04

准备:下载thinkphp5代码,放入apache目录,赋予777权限chmod 777 -R tp5/使用atom或者sublime或者PhpStorm打开你的项目,准备coding建数据库thinkphp5-- phpMyAdmin SQL Dump

-- version 4.4.15.5

-- http://www.phpmyadmin.net

--

-- Host: localhost

-- Generation Time: 2016-07-06 20:42:33

-- 服务器版本: 5.7.12-log

-- PHP Version: 7.0.7

SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";

SET time_zone = "+00:00";

/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;

/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;

/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;

/*!40101 SET NAMES utf8mb4 */;

--

-- Database: `thinkphp5`

--

-- --------------------------------------------------------

--

-- 表的结构 `think_user`

--

CREATE TABLE IF NOT EXISTS `think_user` (

`user_id` int(11) NOT NULL,

`user_name` varchar(255) NOT NULL,

`UserSex` int(11) DEFAULT NULL,

`UserTel` varchar(255) DEFAULT NULL,

`UserEmail` varchar(255) DEFAULT NULL,

`UserAddress` varchar(255) DEFAULT NULL,

`UserBirth` varchar(255) DEFAULT NULL,

`UserJoinTime` varchar(255) DEFAULT NULL,

`UserPasswd` varchar(255) DEFAULT NULL,

`UserSignature` varchar(255) DEFAULT NULL,

`UserHobby` varchar(255) DEFAULT NULL

) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

--

-- 转存表中的数据 `think_user`

--

INSERT INTO `think_user` (`user_id`, `

user_name`, `

UserSex`,

`UserTel`, `

UserEmail`, `

UserAddress`, `

UserBirth`, `

UserJoinTime`, `

UserPasswd`, `

UserSignature`, `

UserHobby`) VALUES

(0, 'thinkphp', 1, '15700000000', 'emial@email.com', '山东省济南市****路', '1111111', '111111', 'qqq', NULL, NULL);

--

-- Indexes for dumped tables

--

--

-- Indexes for table `think_user`

--

ALTER TABLE `think_user`

ADD PRIMARY KEY (`user_id`);

/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;

/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;

/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;

先搭好框架,运行起来,再加强。

2 . 根据“看云”上的thinkphp5的手册写PHP代码

这里可以直接使用ThinkPHP5提供的可以直接生成代码的脚本,也可以手动建目录建文件

application目录结构

ca0d466808fbe2bb9fab36945f801d18.png

Login.php<?php

namespace app\index\controller;

use think\View;

use think\Controller;

use app\index\model\User;

/**

*

*/

class login extends Controller{

public function index(){

$view = new View();

return $view->fetch('index');

}

public function login($user_name='',$user_passwd=''){

$user = User::get([

'user_name' => $user_name,

'UserPasswd' => $user_passwd

]);

if($user){

echo '登录成功'.$user_name.md5($user_passwd);

}else{

return $this->error('登录失败');

}

}

}

User.php<?php

namespace app\index\model;

use think\Model;

class User extends Model{

protected $pk = 'user_id';//设置主键}

3 . View代码HTML

使用原生HTML、CSS未使用前段框架

效果图:

787ff64c83181f3188e6337f40026148.png

login/index.html

登录

dl{

text-align:center;

border:2px solid #00CC99;

margin-top:100px;

margin-bottom:100px;

margin-right:400px;

margin-left:400px;

}

用户名:

密码:

{:captcha_img()}

看了ThinkPHP5的手册,自己还没解决验证码问题。

ThinkPHP的调试工具里边可以直接看到数据库密码,用户提交的密码,虽说自己使用的POST提交表单。

登录之后需要做Session,写登录日志,记录登录时间、IP等信息

还有一些安全问题…

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ThinkPHP6中,可以通过Ucenter实现用户注册登录,以下是代码示例: 1. 安装Ucenter扩展包 在项目根目录下执行以下命令安装Ucenter扩展包: ``` composer require topthink/think-ucenter ``` 2. 配置Ucenter参数 在项目配置文件`config/ucenter.php`中配置Ucenter参数: ```php return [ // Ucenter配置参数 'uc' => [ 'url' => 'http://ucenter.example.com', // Ucenter接口地址 'key' => 'your-ucenter-key', // Ucenter的通信密钥 'appid' => 'your-ucenter-appid', // Ucenter的应用ID ] ]; ``` 3. 创建用户模型 创建一个用户模型`app\model\User.php`,并继承Ucenter提供的`think\ucenter\User`类: ```php namespace app\model; use think\ucenter\User as UcenterUser; class User extends UcenterUser { // 自定义用户模型属性和方法 } ``` 4. 用户注册 在用户注册的控制器中,可以通过以下代码实现用户注册: ```php use app\model\User; class Register { public function index() { $user = new User(); $result = $user->register('username', 'password', 'email'); // 用户名、密码、邮箱 if ($result['status'] == 1) { // 注册成功 } else { // 注册失败 } } } ``` 5. 用户登录 在用户登录的控制器中,可以通过以下代码实现用户登录: ```php use app\model\User; class Login { public function index() { $user = new User(); $result = $user->login('username', 'password'); // 用户名、密码 if ($result['status'] == 1) { // 登录成功 } else { // 登录失败 } } } ``` 6. 用户退出 在用户退出的控制器中,可以通过以下代码实现用户退出: ```php use app\model\User; class Logout { public function index() { $user = new User(); $user->logout(); // 退出成功 } } ``` 以上就是通过Ucenter实现用户注册登录的代码示例。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值