Python - Как узнать, когда была нажата кнопка формы?(выйти) - PullRequest
1 голос
/ 26 апреля 2011

Я пытаюсь сделать кнопку выхода для моего сайта в Python CGI.Мне было интересно, как узнать, когда была нажата кнопка?

Моя форма выхода из системы выглядит следующим образом:

<form id="logout" method="POST" action="">
   <input type="submit" name="logout" value="Logout">
</form>

Отсюда я знаю, что мне нужно сохранить форму в FieldStorage, чтобыЯ сделал следующее:

form = cgi.FieldStorage()

Я пытался сделать оператор if, например:

if form.has_key('logout'):
    doLogoutFunction()

, но он не работает.Пожалуйста, помогите

1 Ответ

1 голос
/ 26 апреля 2011

Вам не нужно делать выход из системы через POST, а также вам нужно указать на что-то в поле действия для передачи либо GET, либо POST

Вот пример , который показывает, как обрабатывать его с помощью GET при отправке любой формы.Вы можете просто разрешить щелкать ссылку выхода из системы для определенной части в URL-адресе /logout и обрабатывать запрос GET, что место для выхода из приложения.

Если вы действительно хотите сделать это через формы, вы можетеиметь скрытое поле для формы, а затем проверить значение.

<html><body>
<form method="get" action="logoff.py">
Name: <input type="hidden" name="hidden">
<input type="submit" value="Logoff">
</form>
</body></html>

И соответствующий скрипт CGI Python как:

import cgi
form = cgi.FieldStorage() # instantiate only once!
name = form.getfirst('name')
if name == 'hidden':
   # do your action
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...