疑惑

culu_ciaomao 2011-06-26 04:49:40
<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<!--#include file="Connections/conn.asp" -->
<%
If(Request.QueryString("vote_id") <> "") then Command1__up = Request.QueryString("vote_id")
%>
<%
Set Command1 = Server.CreateObject("ADODB.Command")
Command1.ActiveConnection = MM_conn_STRING
Command1.CommandText = "UPDATE vote SET vote_number = vote_number+1 WHERE ID =" + Replace(Command1__up, "'", "'") + " "
Command1.CommandType = 1
Command1.CommandTimeout = 0
Command1.Prepared = true
Command1.Execute()
%>
错误类型:
Microsoft JET Database Engine (0x80040E14)
语法错误 (操作符丢失) 在查询表达式 'ID =' 中。
/dw120_vote/vote_process.asp, 第 13 行
怎么解决呢?急死我啦!
...全文
132 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
culu_ciaomao 2011-06-28
  • 打赏
  • 举报
回复
“明显是Command1__up值为空,即vote_id没有传值进来”但数据库里面有IP地址啊~那应该怎样做才算传值进来,请高手指点一下!
vstudiocn 2011-06-28
  • 打赏
  • 举报
回复
明显是Command1__up值为空,即vote_id没有传值进来,你的If(Request.QueryString("vote_id") <> "") then Command1__up = Request.QueryString("vote_id"),是对vote_id有传值时进行赋值,但如果vote_id没传值,你没处理,所以Command1__up="",这样UPDATE vote SET vote_number = vote_number+1 WHERE ID =当然会出错了
culu_ciaomao 2011-06-28
  • 打赏
  • 举报
回复
是让你先在前面,这样:
response.write Replace(Command1__up, "'", "'")
Command1.CommandText = "UPDATE vote SET vote_number = vote_number+1 WHERE ID ="+Replace(Command1__up, "'", "'")+" " 为什么反而出现网页无法显示呢!

culu_ciaomao 2011-06-28
  • 打赏
  • 举报
回复
你果真是高手也~如果能跟你学习应该很荣幸!我也想从头学起啊~可现在要做期末作品,我不能不江湖告急啊~等暑假我会去从头学起的…谢谢哈!
  • 打赏
  • 举报
回复
而且,首先你应该有个认识:程序是个逻辑性的东西,不是文字性的,想插在哪里就插在哪里,你得知道语句加在哪里,计算机会按怎样的逻辑去执行,会有怎样的区别。
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 culu_ciaomao 的回复:]
“看是不是一个ID值
response.write Replace(Command1__up, "'", "'")”加入这一行后,出现“错误类型:
Microsoft VBScript 编译器错误 (0x800A0401)
语句未结束
/my vote/vote_process.asp, line 9, column 80
Command1.CommandText = "UPDATE v……
[/Quote]
是让你先在前面,这样:
response.write Replace(Command1__up, "'", "'")
Command1.CommandText = "UPDATE vote SET vote_number = vote_number+1 WHERE ID ="+Replace(Command1__up, "'", "'")+" "

而不是你那样。
你现在的水平,和没学基本是一样的,建议从头去好好学起。
culu_ciaomao 2011-06-28
  • 打赏
  • 举报
回复
“看是不是一个ID值
response.write Replace(Command1__up, "'", "'")”加入这一行后,出现“错误类型:
Microsoft VBScript 编译器错误 (0x800A0401)
语句未结束
/my vote/vote_process.asp, line 9, column 80
Command1.CommandText = "UPDATE vote SET vote_number = vote_number+1 WHERE ID ="response.write Replace(Command1__up, "'", "'")”“
-------------------------------------------------------------------------------^又是为什么呢?


culu_ciaomao 2011-06-28
  • 打赏
  • 举报
回复
“如果是一个ID值,然后:
Command1.CommandText = "UPDATE vote SET vote_number = vote_number+1 WHERE ID ="& Replace(Command1__up, "'", "'")”这样调试后还是不行!到底是哪里错了呢?
culu_ciaomao 2011-06-26
  • 打赏
  • 举报
回复
因为我这个学期才学,还不懂怎样测试“是不是一个ID值”?如果你不介意,能加我的Q:1062463151,跟我说清楚点吗?谢谢~
亚细亚 2011-06-26
  • 打赏
  • 举报
回复
如果是一个ID值,然后:
Command1.CommandText = "UPDATE vote SET vote_number = vote_number+1 WHERE ID ="& Replace(Command1__up, "'", "'")
亚细亚 2011-06-26
  • 打赏
  • 举报
回复
你先测试,看是不是一个ID值
response.write Replace(Command1__up, "'", "'")

culu_ciaomao 2011-06-26
  • 打赏
  • 举报
回复
我把+改成&,不管是改了一个“+”还是两个“+”,依然是那个错误提示,麻烦各位高手继续帮我一下!!感激不尽!
culu_ciaomao 2011-06-26
  • 打赏
  • 举报
回复
"Request.QueryString("vote_id")
vote_id有通过浏览器传过来吗"什么意思呢?能说清楚点吗?我就是通过IE浏览器打开的,这算不算 通过浏览器传过来呢》
亚细亚 2011-06-26
  • 打赏
  • 举报
回复
将 + 改为 & 试一试
挨踢直男 2011-06-26
  • 打赏
  • 举报
回复
Request.QueryString("vote_id")
vote_id有通过浏览器传过来吗
亚细亚 2011-06-26
  • 打赏
  • 举报
回复
连接字符要用&

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧