Python 验证网页表单数据
我可以提取表单字段的数据,但我无法检查或验证这些信息,看看字段是否为空。
我是在使用Apache+mod_wsgi,浏览器是Firefox,编程语言是Python 2.6,操作系统是Ubuntu 10.04 64位。
下面是我读取网页表单字段数据的示例代码。在这里,我需要检查这个字段是否为空。如果为空,就给这个特定字段一个默认的错误提示,然后让用户返回去填写数据。在这之前,“保存”(或“打印并保存”)按钮是不会显示的。
state = form.getvalue('state')
nameDistrict = form.getvalue('district')
dist_code = form.getvalue('Dcode')
html += 'State :' + str(state)
html += 'District Name :' + str(nameDistrict)
html += 'District Code :' + str(dist_code)
这是我尝试的一个方法,结果是没成功。 :(
def val(dict, key, default_str):
value = dict.get(key, default_str)
if value == '':
return default_str
else:
return value
第二次尝试
if state == ' ' :
return 'Please Enter the State Name'
else :
return state
另一个尝试是
try:
state = form.getvalue('state')
except ValueError:
'Please Enter the state Name'
依然没有成功。
请给我一些例子,教我怎么检查字段是否为空。
谢谢
2 个回答
0
这个问题也在mod_wsgi的讨论组里被提过,并且那里也给出了答案。
http://groups.google.com/group/modwsgi/browse_thread/thread/97e1ab3bde4230a1#
1
这是我正在使用的代码部分。
class Handler:<br> def do(self, environ, start_response):<br> html = """ <html><head><title>C Informatics</title> <meta charset=utf-8> <form method="post" action="newreg.py"><br> <table border=1><br> <tr><td>State:-<input type="text" name="state" size=15 max length=15><br> City/District:<input type="text" name="district">Code:<input type="text" > name="Dcode" max length=10 size=10> . . . . . . . . .
<input type="submit" Value="Save">
<input type="submit" value="Print & Save"></center>
</form>