이 문제는 당황스럽게 간단합니다.cgi.FieldStorage 항상 비어 있음 - 반환하지 않음 게시 된 양식 데이터
저는 파이썬에 대해 설명하려고합니다. 그 일을 시작하는 좋은 방법은 간단한 CGI 스크립트를 만들어 양식 데이터를 처리하고 마술을 부리는 것이라고 생각했습니다. 내 파이썬 스크립트는 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 스크립트를 가리 키도록 양식을 변경하면 양식 데이터가 올바르게보고됩니다. 파이썬 페이지는 항상 동일한 결과를 제공합니다 : 키의 수 : 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
저는 파이썬 2.5.2와 아파치 2.2.3을 사용하고 있습니다. 이것은 나의 아파치의 conf 파일에 (그리고 내 스크립트의/var/www /에서 파이썬에) 무엇을 : CGI와 mod_python을 :
<Directory /var/www/python/>
Options FollowSymLinks +ExecCGI
Order allow,deny
allow from all
AddHandler mod_python .py
PythonHandler mod_python.publisher
</Directory>
는 어떻게 제출하나요 같은 웹 프레임 워크를 사용한다? 귀하의 양식에 제출 버튼이 없습니다. – extraneon
하 - 좋은 지적! 이 질문에 대한 양식을 단순화 할 때 부주의하게 제출을 삭제했습니다. 감사. –