核桃国家标准:希望asp、sql高手指点!

来源:百度文库 编辑:中科新闻网 时间:2024/04/30 12:00:46
请问我这样写
sql_1="select * from sub1 "
if userid="星期一" then
sql_1=sql_1& "where id=1"
elseif userid="星期二" then
sql_1=sql_1&"where id=2"就没有问题
但是如果我加上个条件
id=request("id")
userid=request("userid")
if id="jw" then
sql_1="select * from sub "
elseif id="sj" then
sql_1="select * from sub1 "
end if

if userid="星期一" then
sql_1=sql_1& "where id=1"
elseif userid="星期二" then
sql_1=sql_1&"where id=2"
end if
就提示我sql语句不对了,请问是不是不能在问号后面连续提取两个不同的变量啊?例如
admin.asp?userid="星期一"...
再提取admin.asp?id="jw"...
我不太懂sql,希望高手指点
我想做的是先选一下地点sj,jw
在选择星期,做两个超链接例如
sj、jw
星期一、星期二...
这样不知道有什么好办法!

admin.asp?userid="星期一"&id="jw"
这样写才对
不知道你怎么写的,sql当然可以多条件查询了

sql_1=sql_1& "where id=1"
把 & 换成 + 看看

不要用双引号,换成:admin.asp?userid=星期一&id=jw
应该就可以了哈~~
你加了那个条件,可能是因为你的变量没有从提交过来的那里获得值,也就是说:id并没有获得request("id")的值,这样就是个null,所以,说查询评语出问题,把双引号去掉应该就可以了.

if id="jw" then
sql_1="select * from sub "
elseif id="sj" then
sql_1="select * from sub1 "
end if

在你上面的这段代码中,SQL有可能最后出来是sql_1=""
如果为空后面就只有WHERE语句了,SQL就不对了

建议你在调试程序时,执行sql前先使用response.write sql_1,看看sql_1到底是什么。如果你从request中获得的id和userid都是对的,那么sql_1应该是对的。但你没有考虑id和userid为其它情况时程序应该怎么处理。

你使用admin.asp?userid=星期一&id=jw 检查一下程序,再试试其它情况。