2010-09-30 2 views
0

Я столкнулся с проблемами с моей формой, я написал приложение в Python3.1, и когда я делаю GET или POST через AJAX, работает отлично, но когда я пытаюсь сделать то же самое с форма-путь окруж [ «wsgi.input»] дать мне это:Проблемы с формой и POST

-----------------------------4974611941277794205934495116--\r 

в первый раз я думаю, что это произошло потому, что файл, что я был попытаться загрузить, но после того, как я исключить файл элемент и дать мне то же самое, что означает это, я даю вам код формы:

<iframe id="hidden-frm" name="hidden-frm" style="display: none;"> 
</iframe> 
<form ENCTYPE="multipart/form-data" action="Gate.py?bt=upload" method="POST" name="input" target="hidden-frm">  
    <input id="testtxt" type="text"/> 
    <input type="submit" value="Presiona aqui!"/> 
</form> 

Заранее благодарен.

+0

Не могли бы вы рассказать нам больше об окружающей среде, в которой вы хотели бы работать? То есть. Это приложение WSGI, использующее wsgiref для обслуживания, или, возможно, CGI через Apache или FastCGI через nginx? –

+0

Это приложение WSGI, использующее wsgiref для обслуживания, и основная проблема заключается в том, что когда я пытаюсь сохранить закодированный файл, исправлена ​​проблема вопроса, но спасибо !!!!!! – hidura

ответ

0

Эта кодировка является результатом enctype="multipart/form-data, когда я подозреваю, что вы действительно ожидаете кодировку по умолчанию application/x-www-form-urlencoded (то есть key=value&key2=value2).

Если вам не нужен ввод файла (для которого требуется многопроходная кодировка), просто удалите enctype из тега формы, иначе вам понадобится разобрать многостраничный вход. Stdlib cgi.FieldStorage является одним из решений для Python 2.x, но я не знаю статус этого класса для Python 3.x (он был сломан, IIRC).

+0

Это не работает, но с enctype это работает, теперь моя проблема с выпиской в ​​cgi, нет другого способа извлечь? – hidura

Смежные вопросы