0

form.html

<form action="p.py" method="post">
 <input type="text" id="id_text" name="name_text" />
 <input type="submit" id="id_submit" name="name_submit" />
</form>

p.py

#!/usr/bin/python

#what to write here...

这两个文件都放入了/var/www/,现在来自http://example.com/form.html,如果我单击提交按钮,我会执行p.py 吗?如何获取文本框的值?

它是安装在计算机上的 apache/httpd 网络服务器。

4

1 回答 1

0

1,要让p.pyapache 运行,你需要检查:

  • 1、配置apache站点为python脚本,可以选择:cgi/fastcgi
  • 如:ScriptAlias /cgi-bin/ /usr/local/xxxxxx/cgi-bin/
  • 2、确保你的p.py文件是可运行的,通过chown/修改chmod

2、要从表单中获取值,您需要了解cgi知识并从环境中获取数据,

或者使用 cgi 模块更容易:

import cgi
form = cgi.FieldStorage()
v = form.getvalue('id_text','')

print """Content-type: text/html

<html>
<body> submit value:%s </body>
</html>""" % (v)

最后,我建议:

  • 将可运行的脚本放到一个单独的目录中,远离/var/www/
  • 使用 Web 框架进行 Web 开发。2012年用cgi级别的技术太深了。
于 2012-07-03T10:11:56.833 回答