import cgi
def fill():
s = """\
<html><body>
<form method="get" action="./show">
<p>Type a word: <input type="text" name="word">
<input type="submit" value="Submit"</p>
</form></body></html>
"""
return s
# Receive the Request object
def show(req):
# The getfirst() method returns the value of the first field with the
# name passed as the method argument
word = req.form.getfirst('word', '')
print "Creating a text file with the write() method."
text_file = open("/var/www/cgi-bin/input.txt", "w")
text_file.write(word)
text_file.close()
# Escape the user input to avoid script injection attacks
#word = cgi.escape(word)
test(0)
'''Input triggers the application to start its process'''
simplified_file=open("/var/www/cgi-bin/output.txt", "r").read()
s = """\
<html><body>
<p>The submitted word was "%s"</p>
<p><a href="./fill">Submit another word!</a></p>
</body></html>
"""
return s % simplified_file
def test(flag):
print flag
while flag!=1:
x=1
return
Этот метод заполнения программы mod_python отправляет текст для показа метода, где он записывает данные в файл input.txt, который используется моим приложением, пока мое приложение не запустится, я не хочу, чтобы остальные операторы работали, поэтому яВызвал функциональный тест, в котором у меня есть цикл while, который будет непрерывно повторяться до тех пор, пока флаг не будет установлен в 1. Если его значение равно 1, он прервет цикл while и продолжит выполнение остальных операторов.Я сделал так, чтобы мое приложение передавало переменную флага теста, чтобы установить его как 1. Согласно моей логике, он должен разорвать цикл и вернуться к функции show и продолжить выполнение rest, но это не происходит таким образом, это непрерывная загрузка страницы!
Пожалуйста, помогите мне через это ..
Спасибо ..:)