|
主题: 求教投票程序的cook检测
|
 老张
职务:普通成员
等级:5
金币:10.0
发贴:2796
注册:2001/5/11 12:41:55
|
#12003/1/21 23:20:59
这是一个投票程序的一部分,我加入了cook监测,但实在不明白问题处在哪里。 按下面的程序执行,在Sub research()的判断中,既没有对tgp重新赋值,也没有增加投票,怎么会这样?请帮忙看看。
Option Explicit %>
<% dim action,id,tpNum,tgp id=request("id") tgp="谢谢你的投票!" action=Lcase(Trim(Request("action"))) Select Case action Case "research" Call research Case "result" Call result(id) Case Else Call result(id) End Select Call objend()
Sub research() dim selected selected=request("selected") tpNum = Request.Cookies("toupiao")("t" & id) if tpNum=id then tgp="对不起,你已经投过票了!" else conn.execute("update research set res"&selected&"=res"&selected&"+1 where id="&id) Response.Cookies("toupiao")("t" & id) = id Response.Cookies("toupiao").Expires = Date + 365 end if response.redirect "research.asp?id="&id&"" End Sub
|
 缺缺
职务:管理员
等级:8
金币:41.0
发贴:9620
注册:2004/1/14 19:14:47
|
#22003/1/22 1:56:09
到底是出了什么问题阿? :confused: :confused:
编辑历史:[这消息被allinhands编辑过(编辑时间2003-01-22 01:56:35)]
|
 老张
职务:普通成员
等级:5
金币:10.0
发贴:2796
注册:2001/5/11 12:41:55
|
#32003/1/22 6:26:24
就是在执行的时候这个判断: if tpNum=id then tgp="对不起,你已经投过票了!" else conn.execute("update research set res"&selected&"=res"&selected&"+1 where id="&id) Response.Cookies("toupiao")("t" & id) = id Response.Cookies("toupiao").Expires = Date + 365 end if 既没有对tgp赋值,也没有执行下面的投票累加部分
|
 老张
职务:普通成员
等级:5
金币:10.0
发贴:2796
注册:2001/5/11 12:41:55
|
#42003/1/22 8:32:01
而cook文件中也确实写入了信息: toupiao t3=3&t5=5 zhangcs/ 1024 2675671040 29614135 2006346416 29540779 * 但为何tpNum = Request.Cookies("toupiao")("t" & id) 不能再读出数据,运行时tpNum好像为空?
|
 大雪糕
职务:普通成员
等级:2
金币:10.0
发贴:579
注册:2002/2/2 11:30:51
|
#52003/1/22 16:32:55
SQL语句写错了,改一下吧 conn.execute("update research set res("selected")=res("selected")+1 where id="&id),另外,你有定义过recordset记录集吗
|
 老张
职务:普通成员
等级:5
金币:10.0
发贴:2796
注册:2001/5/11 12:41:55
|
#62003/1/22 18:23:55
谢谢!SQL那样写好像也能正常执行。 我找到毛病所在了,是记录投票后面的一行: response.redirect "research.asp?id="&id&"" 其实cook本来已经读出来了,他重新自身调用把我的几个变量都清除了,改为 Call result(id) 就好了。
|