thinkphp 登录(未设置cookie+session)
<?php namespace app\Admin\controller; use think\Controller; use think\Loader; use think\Request; class Login extends Controller { //登录 public function login() { // $this->view->engine->layout(false); //登录界面 return $this->fetch(); } //登录验证 public function successLogin() { //接受前端的值 $userData = input(); //验证参数 $validate = Loader::validate('Admin'); if (!$validate->check($userData)) { $this->error($validate->getError(), 'admin/login/login'); } $data = \app\Admin\model\login::login($userData); //进行判断用户输入的数据是否与数据库注册的数据项匹配 if ($data['name'] != $userData['name']) { $this->error('用户名输入错误,请重新输入','/admin/login/login'); } if ($data['password']!=$userData['password']){ $this->error('密码输入错误,请重新输入','/admin/login/login'); } //登录成功 $this->success('登录成功',url('/admin/goods/index')); }
、、、、、、、、、、、、表单页面
<!DOCTYPE html> {__NOLAYOUT__} <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>登录</title> <link rel="stylesheet" href="__STATIC__/admin/css/login.css"> </head> <body> <form action="{:url('/admin/login/successlogin')}" method="post"> <div class="login"> <div class="center"> <h1>Login</h1> <div class="inputLi"> <strong>用户名</strong> <input type="text" placeholder="请输入" name="name"> </div> <div class="inputLi"> <strong>密码</strong> <input type="text" placeholder="请输入" name="password"> </div> <div class="inputLi"> <button type="submit">登录</button> </div> </div> </div> </form> </body> </html>
、、、、、、、、、、、、、、、、、、、、、模型
<?php namespace app\Admin\model; use think\Model; class login extends Model { // protected $table='login'; public static function login($userData){ return self::where('name',$userData['name'])->find(); } }
、、、、、、、、、、、、、、、、数据库(密码应该md5()加密,这里没有)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现