当前位置: 首页 > news >正文

07-03 04 用户登录退出

有了后台框架的小程序后台,此时在登录页面随便输入用户名和密码进行登录会有如下显示:

上面显示的原因是我们需要给user写入login的视图函数, 响应登录请求.

 

给用户数据库增加一个用户

现在数据库没有用户,不方便进行登录测试开发,所以为数据库增加一个用户.

 增加用户的命令如下:

#  请将下面的SQL语句执行,然后默认登录账号是54php.cn 密码是123456

INSERT INTO `user` (`uid`, `nickname`, `mobile`, `email`, `sex`, `avatar`, `login_name`, `login_pwd`, `login_salt`, `status`, `updated_time`, `created_time`)
VALUES
	(1, '哎哎哎www.54php.cn', '11012345679', 'apanly@163.com', 1, '', '54php.cn', '816440c40b7a9d55ff9eb7b20760862c', 'cF3JfH5FJfQ8B2Ba', 1, '2017-03-15 14:08:48', '2017-03-15 14:08:48');

 

 实操结果

C:\Users\小梁总>mysql -uroot -p
Enter password: ****
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.6.42 MySQL Community Server (GPL)

Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| dbutiles           |
| food_db            |
| mydb1              |
| mydb2              |
| mydb57             |
| mysite             |
| mysql              |
| orm_home           |
| orm_practice       |
| performance_schema |
| test               |
+--------------------+
12 rows in set (0.03 sec)

mysql> use food_db;
Database changed
mysql> show tables;
+-------------------+
| Tables_in_food_db |
+-------------------+
| user              |
+-------------------+
1 row in set (0.00 sec)

mysql> select * from user;
Empty set (0.00 sec)

mysql> INSERT INTO `user` (`uid`, `nickname`, `mobile`, `email`, `sex`, `avatar`, `login_name`, `login_pwd`, `login_salt`, `status`, `updated_time`, `created_time`)VALUES(1, '哎哎哎www.54php.cn', '11012345679', 'apanly@163.com', 1, '', '54php.cn', '816440c40b7a9d55ff9eb7b20760862c', 'cF3JfH5FJfQ8B2Ba', 1, '2017-03-15 14:08:48', '2017-03-15 14:08:48');
Query OK, 1 row affected (0.03 sec)

mysql> select * from user\G
*************************** 1. row ***************************
         uid: 1
    nickname: 哎哎哎www.54php.cn
      mobile: 11012345679
       email: apanly@163.com
         sex: 1
      avatar:
  login_name: 54php.cn
   login_pwd: 816440c40b7a9d55ff9eb7b20760862c
  login_salt: cF3JfH5FJfQ8B2Ba
      status: 1
updated_time: 2017-03-15 14:08:48
created_time: 2017-03-15 14:08:48
1 row in set (0.00 sec)

登录功能开发

登录功能开发涉及如下文件:

  • order_V200722\web\controllers\user\User.py      # 视图函数文件
  • order_V200722\common\libs\user\UserService.py      # user自定义通用方法,例如加密
  • order_V200722\web\templates\user\login.html        # 前端登录html
  • order_V200722\web\static\js\user\login.js     # 优化前端登录页面体验

登录效果改进 Ajax

web/templates/user/login.html需要更改

 web/static/js/user/login.js需要增加

 web/static/js/user/common.js需要更改

登录拦截

已经登录过存有cookie的用户可以访问,没有登录过没有cookie的用户被拦截

web/interceptors/AuthInterceptor.py被增加

www.py文件增加错误拦截包

 

 

相关文章:

  • linux桥接联网正常后重启系统不能联网解决方法
  • 宝*塔运维安装
  • 07-05 编辑和修改登陆人信息
  • 07-05 编辑和修改登录人信息
  • 07-06 管理员后台账号模块开发 账号管理:列表详情展示
  • 07-07 管理员后台账号模块开发 账号管理:添加和编辑账号
  • 07-08 管理员后台账号模块开发 搜索和分页
  • 07-09 管理员后台账号模块开发 删除和恢复
  • 08-01 小程序会员登录和注册
  • 17-01 软件云主机上线部署
  • 17 -02 git和码云同步操作
  • ERROR 2002 (HY000): Cant connect to local MySQL server through socket /var/lib/mysql/mysql.sock
  • 重置密码遇到ERROR 1045 (28000): Access denied for user root@localhost (using passwor:yes)问题
  • python Flask 09 Flask基于DBUtils, sqlobject, SQLAlchemy实现数据库连接池
  • python Flask 10 Flask请求上下文管理werkzeug
  • 0基础学习移动端适配
  • C学习-枚举(九)
  • iOS 系统授权开发
  • Java深入 - 深入理解Java集合
  • Java知识点总结(JDBC-连接步骤及CRUD)
  • Js基础知识(四) - js运行原理与机制
  • PAT A1092
  • PHP 使用 Swoole - TaskWorker 实现异步操作 Mysql
  • scala基础语法(二)
  • 如何设计一个微型分布式架构?
  • 设计模式走一遍---观察者模式
  • shell使用lftp连接ftp和sftp,并可以指定私钥
  • ​​​​​​​​​​​​​​Γ函数
  • ​HTTP与HTTPS:网络通信的安全卫士
  • #Z2294. 打印树的直径
  • #图像处理
  • (1)常见O(n^2)排序算法解析
  • (13)[Xamarin.Android] 不同分辨率下的图片使用概论
  • (31)对象的克隆
  • (Forward) Music Player: From UI Proposal to Code
  • (翻译)terry crowley: 写给程序员
  • (附源码)springboot宠物医疗服务网站 毕业设计688413
  • (简单有案例)前端实现主题切换、动态换肤的两种简单方式
  • (全注解开发)学习Spring-MVC的第三天
  • .NET / MSBuild 扩展编译时什么时候用 BeforeTargets / AfterTargets 什么时候用 DependsOnTargets?
  • .NET CF命令行调试器MDbg入门(四) Attaching to Processes
  • .net core MVC 通过 Filters 过滤器拦截请求及响应内容
  • .NET Core 成都线下面基会拉开序幕
  • .NET Remoting学习笔记(三)信道
  • .NET 依赖注入和配置系统
  • .NET 指南:抽象化实现的基类
  • .NET/C# 利用 Walterlv.WeakEvents 高性能地定义和使用弱事件
  • .NET分布式缓存Memcached从入门到实战
  • .NET框架
  • .net连接oracle数据库
  • .NET轻量级ORM组件Dapper葵花宝典
  • .Net小白的大学四年,内含面经
  • .pub是什么文件_Rust 模块和文件 - 「译」
  • ::before和::after 常见的用法
  • [<MySQL优化总结>]