python实现登陆界面
文件夹结构
python-webapp/ <– 根目录|+- UserConn/
<-- Web目录,存放.py文件| || +- static/ <-- 存放静态文件| || +- templates/ <--db.py <--main.py
-
Now we must the first to design the db.py
下面是实现数据库的链接类:
import pymysql conn=pymysql.connect("localhost","root","********","test") cur=conn.cursor() def insert(username,password): sql="insert into user (username,password) values ('%s','%s')"%(username,password) cur.execute(sql) conn.commit() conn.close() def isExisted(username,password): sql="select*from user where username ='%s' and password ='%s'"%(username,password) cur.execute(sql) result=cur.fetchall() if(len(result)==0): return False else: return True
- 接下来是实现main模块的组件功能
from flask import Flask from flask import request from flask import render_template from flask import redirect from db import * app=Flask(__name__) from wtforms import Form,TextField,PasswordField,validators //定义的LoginForm类 class LoginForm(Form): username = TextField("username",[validators.Required()]) password = PasswordField("password",[validators.Required()]) //对http://127.0.0.1:8080/register的注册 @app.route("/register",methods=['GET','POST']) def register(): myForm=LoginForm(request.form) //这里是对LoginForm的实例化 if request.method=='POST': insert(myForm.username.data,myForm.password.data) //insert方法对应的是db.py里面的insert(user,password)方法 return render_template("Welcome.html") return render_template("login.html", form=myForm) //对http://127.0.0.1:8080/login的注册 @app.route("/login",methods=['GET','POST']) def login(): myForm=LoginForm(request.form) if request.method =='POST': if (isExisted(myForm.username.data,myForm.password.data)): return redirect("http://Waynicshine.github.io") else: return "Login Failed" return render_template("login.html", form=myForm) if __name__=="__main__": app.run(port=8080,debug=True)
index.html的前端表现
<html> <head></head> <body> <div align="center"> <h1>User Management</h1> {% if message %} {{message}} {% endif %} <form method="post"> Username :{{form.username}} <br/> Password :{{form.password}} <br/> <input type="submit" value="Submit" /> <input type="reset" value="reset" /> </form> </div> </body> </html>
- login.html展现
Paste_Image.png
- 登陆成功后,跳转到我的blog
www.waynicshine.github.io
Paste_Image.png
- register.html展现
Paste_Image.png
原文地址:https://www.jianshu.com/p/b60f96c77f44
相关推荐
-
Django之模型层(2) python基础
2019-9-17
-
Python档案袋( 面向对象 ) python基础
2019-10-9
-
使用Opencv-python生成520图片数字 python基础
2020-5-31
-
APScheduler任务调度利器 python基础
2019-4-27
-
Python–Virtualenv简明教程 python基础
2018-2-26
-
AirFlow简介 python基础
2019-10-3
-
python 文件操作总结 python基础
2019-7-21
-
❖ 一篇文章搞定Github API 调用 (v3) python基础
2019-10-16
-
saltstack之自动化运维 python基础
2019-3-22
-
如何用 Python 读取 Outlook 中的电子邮件 python基础
2019-2-21