asp中checkbox如何多选的问题? 50
<%dimsqlAllTempTextifrequest("updateAll")<>""thenresponse.Write(request("updateAll"))...
<%
dim sqlAllTempText
if request("updateAll")<>""then
response.Write(request("updateAll"))
if request("fangshi") = "xianzai" then
dim chkvalue
chkvalue=request.QueryString("xy")
response.Write(chkvalue)
sqlAllTempText="update topgg2 set splb = 'dszp' where tpid in (" & chkvalue & ")"
end if
response.Write(sqlAllTempText)
conn.Execute(sqlAllTempText)
Response.Redirect "addgl.asp"
end if
%>
<input type="checkbox" name="xy" value="<%=rsna("tpid")%>" >
可是每次执行后总提示:
1356update topgg2 set splb = 'dszp' where tpid in ()
Microsoft OLE DB Provider for ODBC Drivers 错误 '80040e14'
[Microsoft][ODBC Microsoft Access Driver] 语法错误 (操作符丢失) 在查询表达式 'tpid in ()' 中。
/piaoy/edit.asp,行 129
dim sqlAllTempText
if request("updateAll")<>""then
response.Write(request("updateAll"))
//if request("fangshi") = "xianzai" then
dim chkvalue
chkvalue=request.QueryString("xy")
response.Write(chkvalue)
sqlAllTempText="update topgg2 set splb = 'dszp' where tpid in (" & chkvalue & ")"
//end if
即使把if语句注释掉,也是老样子,
另我的提交语句
<a href="edit.asp?updateAll=<%=rsna("tpid")%>&fangshi=xianzai">转为现在</a>
我总怀疑我的SQL语句是不是错了,或者是chkvalue=request.QueryString("xy")
取值取不来啊
xy是嵌套的好几个表里的一个checkbox的name。
我发现总是提示“操作符丢失”而测试打印的sql语句也是提示“update topgg2 set splb = 'dszp' where tpid in ()
”总是传不过值来 展开
dim sqlAllTempText
if request("updateAll")<>""then
response.Write(request("updateAll"))
if request("fangshi") = "xianzai" then
dim chkvalue
chkvalue=request.QueryString("xy")
response.Write(chkvalue)
sqlAllTempText="update topgg2 set splb = 'dszp' where tpid in (" & chkvalue & ")"
end if
response.Write(sqlAllTempText)
conn.Execute(sqlAllTempText)
Response.Redirect "addgl.asp"
end if
%>
<input type="checkbox" name="xy" value="<%=rsna("tpid")%>" >
可是每次执行后总提示:
1356update topgg2 set splb = 'dszp' where tpid in ()
Microsoft OLE DB Provider for ODBC Drivers 错误 '80040e14'
[Microsoft][ODBC Microsoft Access Driver] 语法错误 (操作符丢失) 在查询表达式 'tpid in ()' 中。
/piaoy/edit.asp,行 129
dim sqlAllTempText
if request("updateAll")<>""then
response.Write(request("updateAll"))
//if request("fangshi") = "xianzai" then
dim chkvalue
chkvalue=request.QueryString("xy")
response.Write(chkvalue)
sqlAllTempText="update topgg2 set splb = 'dszp' where tpid in (" & chkvalue & ")"
//end if
即使把if语句注释掉,也是老样子,
另我的提交语句
<a href="edit.asp?updateAll=<%=rsna("tpid")%>&fangshi=xianzai">转为现在</a>
我总怀疑我的SQL语句是不是错了,或者是chkvalue=request.QueryString("xy")
取值取不来啊
xy是嵌套的好几个表里的一个checkbox的name。
我发现总是提示“操作符丢失”而测试打印的sql语句也是提示“update topgg2 set splb = 'dszp' where tpid in ()
”总是传不过值来 展开
2个回答
展开全部
其实是代码的一个小的逻辑错误:
如果request("fangshi")的值不是xianzai,仍会运行以下语句,
response.Write(sqlAllTempText)
conn.Execute(sqlAllTempText)
Response.Redirect "addgl.asp"
这时
其中用到的一个变量叫sqlAllTempText可能会成为空值,就会引发tpid in()这个sql语句的出现,解决这个问题的方法就是调整您的IF语句,使之逻辑化。
dim sqlAllTempText
if request("updateAll")<>""then
response.Write(request("updateAll"))
if request("fangshi") = "xianzai" then
dim chkvalue
chkvalue=request.QueryString("xy")
response.Write(chkvalue)
sqlAllTempText="update topgg2 set splb = 'dszp' where tpid in (" & chkvalue & ")"
response.Write(sqlAllTempText)
conn.Execute(sqlAllTempText)
Response.Redirect "addgl.asp"
end if
end if
如果request("fangshi")的值不是xianzai,仍会运行以下语句,
response.Write(sqlAllTempText)
conn.Execute(sqlAllTempText)
Response.Redirect "addgl.asp"
这时
其中用到的一个变量叫sqlAllTempText可能会成为空值,就会引发tpid in()这个sql语句的出现,解决这个问题的方法就是调整您的IF语句,使之逻辑化。
dim sqlAllTempText
if request("updateAll")<>""then
response.Write(request("updateAll"))
if request("fangshi") = "xianzai" then
dim chkvalue
chkvalue=request.QueryString("xy")
response.Write(chkvalue)
sqlAllTempText="update topgg2 set splb = 'dszp' where tpid in (" & chkvalue & ")"
response.Write(sqlAllTempText)
conn.Execute(sqlAllTempText)
Response.Redirect "addgl.asp"
end if
end if
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询