python-web:flask框架下的html实例——用户注册页面
1、submit实现页面跳转,方法为get
<h1>用户注册</h1>
<!-- 使用get方式提交,method为post/get,action保存提交到哪里 -->
<form method = "get"action="/do/reg" >
用户名:<input type="text" name="uu">
密码:<input type="password" name="pp">
<!--submit可以实现页面跳转,当加入form时-->
<!-- <input type = "button" value="button按钮">-->
<input type = "submit" value="submit按钮">
</form>
- 点击submit按钮,会实现跳转
- 信息会被传入到url中

页面上的数据,想要提交到后台:
- form标签包裹所要提交的数据标签。
- form标签中,定义method(提交方式),action(提交地址)
- form标签中,必须有submit标签
- 在form中的一些标签:input/select/textarea
- 一定要写name属性
<input type="text" name="uu">
submit获取数据到后台:
from flask import Flask,render_template,request #头文件
@app.route("/do/reg", methods = ['GET'])
def do_register():
# 接收用户通过get形式发送过来的数据
print(request.args)
# 给用户返回结果,必须有return语句
return "注册成功"
2、submit实现页面跳转,方法为post
from flask import Flask,render_template,request #头文件
@app.route("/post/reg", methods = ['POST'])
def post_register():
# 接收用户通过post形式发送过来的数据
print(request.form)
# 给用户返回结果,必须有return语句
return "注册成功"
# action改成post即可
<h1>用户注册</h1>
<!-- 使用get方式提交,method为post/get,action保存提交到哪里 -->
<form method = "post"action="/post/reg" >
用户名:<input type="text" name="uu">
密码:<input type="password" name="pp">
<!--submit可以实现页面跳转,当加入form时-->
<!-- <input type = "button" value="button按钮">-->
<input type = "submit" value="submit按钮">
</form>

3、submit提交单选框、复选框、下拉框信息(post)
# 加上value值
# 单选框
<input type="radio" name = "gender" value = "1"> 男
<input type="radio" name = "gender" value = "2"> 女
# 复选框
<input type="checkbox" name="hobby" value = "10"> 篮球
<input type="checkbox" name="hobby" value = "20"> 足球
<input type="checkbox" name="hobby" value = "30"> 乒乓球
# 单选下拉框
<select name ="city">
<option value="bj">北京</option>
<option value="tj">天津</option>
</select>
# 可多选下拉框
擅长领域:
<select name ="good" multiple>
<option value="py">python</option>
<option value="ja">java</option>
</select>
# 拿到文本框数据
备注:<textarea name="more"></textarea>
- 要想让数据提交到后台,必须定义name属性
- 能提交到后台的数据,必须是用户能输入的数据
4、将用户信息获取出来
@app.route("/post/reg", methods = ['POST'])
def post_register():
# 接收用户通过post形式发送过来的数据
user = request.form.get("user")
pwd = request.form.get("pwd")
gender = request.form.get("gender")
# 当有多个答案产生时,使用getlist
hobby_list = request.form.getlist("hobby")
city = request.form.get("gender")
skill_list = request.form.getlist("skill")
more = request.form.get("more")
print(user,pwd,gender,hobby_list,city,skill_list,more)
# 将用户信息写入文件中实现注册、写入到excel中实现注册,写入到mysql中实现注册
# print(request.form)
# 给用户返回结果,必须有return语句
return "注册成功"
5、将get请求与post请求合二为一
@app.route('/register', methods = ['GET','POST'])
def register():
if request.methods =="GET":
return render_template('register.html')
else:
# 接收用户通过post形式发送过来的数据
user = request.form.get("user")
pwd = request.form.get("pwd")
gender = request.form.get("gender")
# 当有多个答案产生时,使用getlist
hobby_list = request.form.getlist("hobby")
city = request.form.get("gender")
skill_list = request.form.getlist("skill")
more = request.form.get("more")
print(user, pwd, gender, hobby_list, city, skill_list, more)
# 将用户信息写入文件中实现注册、写入到excel中实现注册,写入到mysql中实现注册
# print(request.form)
# 给用户返回结果,必须有return语句
return "注册成功"
记得修改html文件下的url
<form method = "post"action="/register" >
6、最终代码
# app.py
from flask import Flask,render_template,request
app = Flask(__name__)
@app.route('/register', methods = ['GET','POST'])
def register():
if request.methods =="GET":
return render_template('register.html')
else:
# 接收用户通过post形式发送过来的数据
user = request.form.get("user")
pwd = request.form.get("pwd")
gender = request.form.get("gender")
# 当有多个答案产生时,使用getlist
hobby_list = request.form.getlist("hobby")
city = request.form.get("gender")
skill_list = request.form.getlist("skill")
more = request.form.get("more")
print(user, pwd, gender, hobby_list, city, skill_list, more)
# 将用户信息写入文件中实现注册、写入到excel中实现注册,写入到mysql中实现注册
# print(request.form)
# 给用户返回结果,必须有return语句
return "注册成功"
@app.route("/post/reg", methods = ['POST'])
def post_register():
# 接收用户通过post形式发送过来的数据
user = request.form.get("user")
pwd = request.form.get("pwd")
gender = request.form.get("gender")
# 当有多个答案产生时,使用getlist
hobby_list = request.form.getlist("hobby")
city = request.form.get("gender")
skill_list = request.form.getlist("skill")
more = request.form.get("more")
print(user,pwd,gender,hobby_list,city,skill_list,more)
# 将用户信息写入文件中实现注册、写入到excel中实现注册,写入到mysql中实现注册
# print(request.form)
# 给用户返回结果,必须有return语句
return "注册成功"
if __name__ == '__main__':
app.run()
# register.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<h1>用户注册</h1>
<!-- 使用get方式提交,method为post/get,action保存提交到哪里 -->
<form method = "post"action="/register" >
<div>
用户名:<input type="text" name="user">
</div>
<div>
密码:<input type="password" name="pwd">
</div>
<div>
性别:
<input type="radio" name = "gender" value = "1"> 男
<input type="radio" name = "gender" value = "2"> 女
</div>
<div>
爱好:
<input type="checkbox" name="hobby" value = "10"> 篮球
<input type="checkbox" name="hobby" value = "20"> 足球
<input type="checkbox" name="hobby" value = "30"> 乒乓球
</div>
<div>
城市:
<select name ="city">
<option value="bj">北京</option>
<option value="tj">天津</option>
</select>
</div>
<div>
擅长领域:
<select name ="skill" multiple>
<option value="py">python</option>
<option value="ja">java</option>
</select>
</div>
<!--submit可以实现页面跳转,当加入form时-->
<!-- <input type = "button" value="button按钮">-->
<div>
备注:<textarea name="more"></textarea>
</div>
<div>
<input type = "submit" value="submit按钮">
</div>
</form>
</body>
</html>
python-web:flask框架下的html实例——用户注册页面的更多相关文章
- 在Python的Flask框架下Address already in use [地址已在使用中]
出现这种错误提示, 说明你已经有一个流程绑定到默认端口(5000).如果您之前已经运行过相同的模块,则很可能该进程仍然绑定到端口. 首先使用端口窗口查找进程 : sudo lsof - i : 5 ...
- 【Python】【Web.py】详细解读Python的web.py框架下的application.py模块
详细解读Python的web.py框架下的application.py模块 这篇文章主要介绍了Python的web.py框架下的application.py模块,作者深入分析了web.py的源码, ...
- flask框架下的jinja2模板引擎(2)(过滤器与自定义过滤器)
flask框架下的jinja2模块引擎(1):https://www.cnblogs.com/chichung/p/9774556.html 这篇论文主要用来记录下 jinja2 的过滤器. 什么是过 ...
- flask框架下的jinja2模板引擎(3)(模板继承与可以在模板使用的变量、方法)
flask 框架下的jinja2模块引擎(1):https://www.cnblogs.com/chichung/p/9774556.html flask 框架下的jinja2模块引擎(2):http ...
- tornado 学习笔记2 Python web主流框架
2.1 Django 官方网址:https://www.djangoproject.com/ 简介:Django is a high-level Python Web framework that e ...
- Python 的 Flask 框架安装应用
Flask是一个使用 Python 编写的轻量级 Web 应用框架.其 WSGI 工具箱採用 Werkzeug ,模板引擎则使用 Jinja2 ,使用 BSD 授权. Flask也被称为 " ...
- Python之Flask框架使用
Flask和Django.Bottle号称Python中的强大又简单的Web框架. Flask是一个使用Python编写的轻量级Web应用框架.基于Werkzeug WSGI工具箱和Jinja2 模板 ...
- flask框架下的jinja2模板引擎(1)(模板渲染)
#转载请留言联系 模板是什么? 在 flask 框架中,视图函数有两个作用:处理业务逻辑和返回响应内容.在大型应用中,把业务逻辑和表现内容放在一起,会增加代码的复杂度和维护成本.模板作用即是承担视图函 ...
- Python的Flask框架入门-Ubuntu
全文请见tuts code:An Introduction to Python's Flask Framework Flask是Python一个小而强大的web框架.学起来简单,用起来也容易,能够帮你 ...
- Python Web Flask源码解读(一)——启动流程
关于我 一个有思想的程序猿,终身学习实践者,目前在一个创业团队任team lead,技术栈涉及Android.Python.Java和Go,这个也是我们团队的主要技术栈. Github:https:/ ...
随机推荐
- OpenGauss 单机版安装
OpenGauss 单机版安装 银河麒麟的前置事项 yum -y install libaio-devel flex bison ncurses-devel glibc-devel patch rea ...
- [转帖]Oracle 创建和查看DBLink 的方法
https://www.cnblogs.com/zhouzangood/articles/4612441.html 1.如果需要创建全局 DBLink,则需要先确定用户有创建 dblink 的权限: ...
- [转帖]TiDB 配置参数修改与系统变量修改步骤
https://tidb.net/blog/bda86911 注意事项1:tidb-test 为集群名称 注意事项2:参数修改前与修改后备份.tiup目录 注意事项3:通过 tiup cl ...
- [转帖]使用S3F3在Linux实例上挂载Bucket
https://docs.jdcloud.com/cn/object-storage-service/s3fs S3F3是基于FUSE的文件系统,允许Linux 挂载Bucket在本地文件系统,S3f ...
- [转帖]Linux文件系统的几个性能测试软件小结
https://developer.aliyun.com/article/297631#:~:text=Linux%E6%96%87%E4%BB%B6%E7%B3%BB%E7%BB%9F%E7%9A% ...
- [转帖]Jmeter中线程组和setUP线程组、tearDown线程组的区别
JMETER: setUP线程组:在测试任务ThreadGroup 运行前先被运行.通常用在运行测试任务前,做初始化工作.例如建立数据库连接初始分化工作.用户登录 tearDown线程组:在测试任务线 ...
- rust入坑指南之ownership
作者:京东零售 王梦津 I. 前言 Rust,不少程序员的白月光,这里我们简单罗列一些大牛的评价. Linus Torvalds:Linux内核的创始人,对Rust的评价是:"Rust的主要 ...
- 2023中国高校计算机大数据挑战赛:论文学科分类baseline|清华主办
2023中国高校计算机大数据挑战赛:论文学科分类baseline|清华主办 官方地址:https://www.heywhale.com/home/competition 项目码源见文末 1.比赛介绍 ...
- Linux的守护进程 [补档-2023-08-10]
12-1守护进程 12-1-1介绍 Daemom是Linux中的后台服务进程,通常独立于控制终端并且周期性地执行某种任务或者事件.这些进 程一般不直接和用户交互,不受用户的登录,注销等影响.没 ...
- Docker从认识到实践再到底层原理(四-1)|Docker镜像仓库|超详细详解
前言 那么这里博主先安利一些干货满满的专栏了! 首先是博主的高质量博客的汇总,这个专栏里面的博客,都是博主最最用心写的一部分,干货满满,希望对大家有帮助. 高质量博客汇总 然后就是博主最近最花时间的一 ...