在python中使用cookie获取浏览器刷新错误

时间:2013-04-25 11:38:32

标签: python html cgi

这是我的form.html

form name="form1" action="/cgi-bin/form2.py" method="post"
input type="text" name="firstname"
input type="submit" value="submit"

以下是我的form2.py

import cgi
print 'Content-type:text/html\n\n'
cookie=Cookie.SimpleCookie()
form = cgi.FieldStorage()
searchterm = form["firstname"].value
print 'Set-Cookie: lastvisit=' + str(searchterm)
cookie["firstname"]=searchterm
print "firstname="+ cookie["firstname"].value
cookie_string = os.environ.get('HTTP_COOKIE')
if not cookie_string:
      print '<p>First visit or cookies disabled</p>'
 else: 
      print '<p>The returned cookie string was "' + cookie_string + '"</p>'
cookie.load(cookie_string)
lastvisit = float(cookie['lastvisit'].value)
cookie['lastvisit']['path'] = '/var/www/cgi-bin/'
print searchterm
print 'Content-type:text/html\n\n'
print "<meta http-equiv='refresh' content='5'>"

我们有一个form.html和form2.py文件,从form.html我提交firstname到form2.py提交后我得到'searchterm'值,然后我刷新后刷新我得到{ {1}}。 即使我已设置并检索cookie值,我也无法使用cookie值刷新浏览器。 请帮助我,我在过去4天内遇到了这个问题。

谢谢, Vittal。

1 个答案:

答案 0 :(得分:0)

如果我的猜测是正确的,首先你点击提交按钮,然后它重定向到form2.py(即form.html正在向form2.py提交值,所以值形式[&#34; firstname&#34; ] .value存在)。现在你在form2.py上刷新了,因为没有提交,所以不会发送任何值。刷新并不意味着提交它只是加载当前页面

form2.py没有提交任何数据,那么值是如何形成[&#34; firstname&#34;]。value