ajax 无刷新页面登录
1:页面代码
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <link rel="stylesheet" href="http://apps.bdimg.com/libs/bootstrap/3.3.0/css/bootstrap.min.css"> </head> <body> <div style="width: 300px"> <div class="form-group"> <label for="name">名称</label> <input type="text" class="form-control account" name="account" > </div> <div class="form-group"> <label for="name">密码</label> <input type="password" class="form-control password" name="password" > </div> <input type="hidden" name="__token__" value="{$Request.token}" /> <input type="button" id="login" value="立即登录"> </div> </body> </html> <script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js"> </script> <script> $('#login').click(function (){ var account =$('.account').val(); var password=$('.password').val(); $.ajax({ url:'/ajax/ajax/save', type:'POST', data:{ account:account, password:password, __token__:"{$Request.token}", }, dataType:'json', success:function (res){ // console.log(res) if (res.code==200){ alert('登录成功'); //将用户res里的Token存入在本地 localStorage.setItem('token','res.data.token') location.href='/ajax/ajax/index'; } } }) }) </script>
2:控制器代码
<?php namespace app\ajax\controller; use app\ajax\model\AjaxModel; use think\Controller; use think\Request; use think\Session; use think\View; use tools\jwt\Token; class Ajax extends Controller { /** * 显示资源列表 * * @return \think\Response */ public function index() { //展示登录后首页 return \view(); } /** * 显示创建资源表单页. * * @return \think\Response */ public function create() { //展示登录页面 return view(); } /** * 保存新建的资源 * * @param \think\Request $request * @return \think\Response */ public function save(Request $request) { // $params = $this->request->post(); //验证user表是否与用户输入的信息向匹配 $data = AjaxModel::getLogininfo($params); if ($params['account'] != $data['username']) { $this->error('账号输入错误', '/ajax/ajax/create'); } if ($params['password'] != $data['userpassword']) { $this->error('密码输入错误', '/ajax/ajax/create'); } return json(['node'=>200,'massage'=>'success','data'=>$data]); }
3:模型代码
<?php namespace app\ajax\model; use think\Model; class AjaxModel extends Model { //查询user用户表 protected $table = 'user'; public static function getLogininfo($params) { return self::where('username', $params['account'])->find(); } }
【推荐】国内首个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岁的心里话
· 按钮权限的设计及实现