ThinkPHP5开发(一)实现登录功能

项目代码托管于CSDN-CODE:
https://code.csdn.net/u012995856/tp5pro/tree/master

主要从这三个方面入手:

  • 数据库
  • PHP代码
  • HTML代码&ThinkPHP视图模板代码

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

    准备:

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

  1. 建数据库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目录结构
这里写图片描述
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未使用前段框架
效果图:
这里写图片描述
login/index.html

<!DOCTYPE>
<html>
<head>
    <title>登录</title>
</head>
<style>
    dl{
        text-align:center;
        border:2px solid #00CC99;
        margin-top:100px;
margin-bottom:100px;
margin-right:400px;
margin-left:400px;
    }
</style>
<body>
    <div id="login_form">
<form action="login" method="post">
    <dl>

    <dt>
        <p>用户名:<input type="text" name="user_name"></p>
    </dt>


    <dt>
        <p>密码:<input type="password" name="user_passwd"></p>
    </dt>

    <dt>
<div>{:captcha_img()}</div>
    </dt>

    <dt>
        <p><input type="submit" value="登录"></p>
    </dt>
    </dl>
</form>
</div>
</body>
</html>
  • 看了ThinkPHP5的手册,自己还没解决验证码问题。
  • ThinkPHP的调试工具里边可以直接看到数据库密码,用户提交的密码,虽说自己使用的POST提交表单。
  • 登录之后需要做Session,写登录日志,记录登录时间、IP等信息
  • 还有一些安全问题…
  • 9
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
ThinkPHP5商品进销存管理网站毕业源码案例设计 开发软件: VsCode或PHPStorm或DW等 数据库:mysql 程序后台技术框架:ThinkPHP5(一个MVC框架) 后台界面采用EasyUI框架,前台界面采用Bootstrap框架,用户浏览器和服务器全程几乎采用jquery异步加载技术! 管理员登陆系统可以管理商品类别信息,商品信息,供应商信息,客户信息,进货信息,销售信息。 商品类别: 商品类别编号,商品类别名称 产品信息: 产品编号,产品类别,产品名称,产品单价,产品库存,生产日期,产品图片,产品描述 供应商: 供应商编号,供应商名称,供应商电话,联系人,供应商地址 客户信息: 客户编号,客户名称,联系人,联系电话,联系地址 产品进货: 进货编号,进货产品,进货日期,进货单价,进货数量,供应商,负责人 产品销售: 销售编号,销售产品,销售日期,销售价格,销售数量,销售客户,销售负责人 -------- 不懂运行,下载完可以私聊问,可远程教学 该资源内项目源码是个人的毕设,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! <项目介绍> 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。 --------

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值