post请求对应的html页面

页面效果

html代码

<html>
<body> <form method="post" >
First name: <input type="text" name="fname" /><br />
Last name: <input type="text" name="lname" /><br />
<input type="submit" value="Submit" />
</form> </body>
</html>

讲解:

1) <form method="post"></form> 表示这个表单使用post方式提交数据,除了post还可以配置为get。

2) <input type="text" name="fname" /> 表示这个表单包含参数fname,参数值是用户在页面输入的值。

3) <input type="submit" value="Submit" /> 表示这个元素显示为按钮样式,点击后提交表单。

4)小技巧: <input name="route" type="hidden" value="account"/> 因为type=“hidden”,所以这个元素不会显示出来。不同表单的route参数取不同的value值。后台可以根据route的值,为不同表单分配不同处理函数。

post请求的后台处理

后台使用python的BaseHTTPServer模块。

    def do_POST(self):
"""Serve a POST request.
分析post请求中的route参数。并执行相应的操作。
"""
form = cgi.FieldStorage(
fp=self.rfile,
headers=self.headers,
environ={
'REQUEST_METHOD': 'POST',
'CONTENT_TYPE': self.headers['Content-Type'],
}
)
route = form.getvalue('route')
self.do_action(route, form)

讲解:

1)使用python中的cgi模块处理表单数据,很方便。

2)通过route参数的值,识别表单,进而分配不同的处理函数。

随机推荐

  1. TP框架中/ThinkPHP/Library/Think/Storage/Driver/File.class.php 错误

        /ThinkPHP/Library/Think/Storage/Driver/File.class.php LINE: 48错误 这是一个将windows下运行正常的ThinkPHP框架移到L ...

  2. OpenStack 网络总结之:openstack中网络的基本概念

    原文:openstack-install-guide-yum-icehouse.pdf/7. Add a networking service/Networking concepts OpenStac ...

  3. iOS仿支付宝首页效果

    代码地址如下:http://www.demodashi.com/demo/12776.html 首先看一下效果 状态栏红色是因为使用手机录屏的原因. 1.问题分析 1.导航栏A有两组控件,随着tabl ...

  4. windows快捷启动命令

    gpedit.msc-----组策略 sndrec32-----录音机 nslookup----- ip地址侦测器 explorer------ 打开资源管理器 logoff-------注销命令 t ...

  5. 什么是gcd

    概述 我将分四步来带大家研究研究程序的并发计算. 第一步是主要的串行程序,然后使用GCD把它并行计算化.假设你想顺着步骤来尝试这些程序的话,能够下载源代码. 注意.别执行imagegcd2.m,这是个 ...

  6. Linux基础之常用基本命令备忘

    Linux基础之常用基本命令备忘 PWD   查询当前所在Linux上的位置 /         根目录 CD(change directory)切换目录  语法 CD /(注意添加空格)   LS ...

  7. 2017湘潭赛 A题 Determinant (高斯消元取模)

    链接 http://202.197.224.59/OnlineJudge2/index.php/Problem/read/id/1260 今年湘潭的A题 题意不难 大意是把n*(n+1)矩阵去掉某一列 ...

  8. centos7防火墙--firewall

    centos7的防火墙变成firewall了 systemctl start firewalld.service#启动firewallsystemctl stop firewalld.service# ...

  9. mysql解压版安装和卸载

    问题1:发生系统错误 5. 解决:使用管理员身份安装即可 问题2:发生系统错误 2. 解决:cd C:\Program Files\MySQL\MySQL Server 5.6\bin 进入mysql ...

  10. hasOwnProperty()与in操作符的区别

    hasOwnProperty()  判断属性是否是实例化(不包括原型)的属性, 存在会返回true; 否则, 返回false in  无论属性是存在实例本身中, 还是原型对象中, 存在会返回true; ...