where 条件错在哪里(200分)

  • 主题发起人 主题发起人 hk_zcp
  • 开始时间 开始时间
H

hk_zcp

Unregistered / Unconfirmed
GUEST, unregistred user!
我正在做一个查询下面这段代码是要求用户输入查询条件,如果满足就打开查询结果窗口。
可是现在一加where 条件就显示找不到记录,请问问题出在哪里?如果有哪位高手帮我解决了我会另外再送200分!
<!--#include file="conn.asp"-->
<%
dim s_tsr
dim s_dh
dim s_sj
s_tsr=replace(trim(request("tsr")),"'","")
s_dh=replace(trim(Request("dh")),"'","")
s_sj=replace(trim(Request("sj")),"'","")
sql="select * from tsjb where tsr='"&amp;s_tsr&amp;"' and dh='"&amp;s_dh&amp;"' and sj='"&amp;s_sj&amp;"'"
rs.open sql,conn,1,1
if not rs.eof then
Session("open")=True
Session("s_tsr")=s_tsr

Response.Redirect "ts_cx_list.asp"
else
response.write"no recordset"
end if
%>
 
s_tsr=replace(trim(request("[red]trs[/red]")),"'","")
下面是tsr,不知是不是问题所在。
 
楼的的眼力真好..
 
不是这个问题
 
我在Delphi中经常将sql写成:
sql="select * from tsjb where tsr='"+s_tsr+"' and dh='"+s_dh+"' and sj='"+s_sj+"'"
我没在vb中试过,不知道对你有没有帮助
 
没有写过ASP代码的同行就请不要进来了,我需要一个真正的高手
 
看上去没有什么问题,还是把sql语句输出,直接到数据库查询
在asp中 &amp;
与 delphi中的 + 功能基本相等
在asp中也可以使用 + 连接字符串,但是连接数字时就有点问题,一般使用 &amp;
就没有什么问题,
另外替换单引号 s_tsr=replace(trim(request("tsr")),"'","") 有点问题
如果记录本身有单引号,就应该替换成两个单引号才可以查询到正确数据
s_tsr=replace(trim(request("tsr")),"'","''")
 
后退
顶部