此問題可能令人尷尬地變得簡單。cgi.FieldStorage始終爲空 - 永遠不會返回POST形式的數據
我想給python一個旋轉。我認爲開始這樣做的一個好方法是創建一個簡單的cgi腳本來處理一些表單數據並做一些魔術。我的python腳本由apache使用mod_python正確執行,並且會打印出我希望打印出來的任何內容。
我唯一的問題是,cgi.FieldStorage()始終爲空。我試過使用POST和GET。每個試驗我填寫兩個表單域。
<form action="pythonScript.py" method="POST" name="ARGH">
<input name="TaskName" type="text" />
<input name="TaskNumber" type="text" />
<input type="submit" />
</form>
如果我改變的形式指向它正確地報告形式數據的Perl腳本。 python頁面總是給我相同的結果:鍵數:0
#!/usr/bin/python
import cgi
def index(req):
pageContent = """<html><head><title>A page from"""
pageContent += """Python</title></head><body>"""
form = cgi.FieldStorage()
keys = form.keys()
keys.sort()
pageContent += "<br />number of keys: "+str(len(keys))
for key in keys:
pageContent += fieldStorage[ key ].value
pageContent += """</body></html>"""
return pageContent
我使用Python 2.5.2和Apache/2.2.3。這是什麼在我的Apache的conf文件(我的劇本是在/ var/WWW /蟒蛇):
<Directory /var/www/python/>
Options FollowSymLinks +ExecCGI
Order allow,deny
allow from all
AddHandler mod_python .py
PythonHandler mod_python.publisher
</Directory>
你如何提交?你的表格沒有提交按鈕:) – extraneon 2010-05-06 13:34:20
哈 - 好點!簡化此問題的表單時,我無意中刪除了提交。謝謝。 – 2010-05-06 13:36:08