您的位置:首页 > 编程语言 > ASP

asp中 or 怎么用才能使下面的筛选生效

2014-02-04 10:24 267 查看

asp中 or 怎么用才能使下面的筛选生效

页面功能:
此页面名字:"页面b"
当上一个"页面a"的参数"yy"传到"页面b"时,有可能是编号,有可能是文字,根据获取的不同进行筛选.
  问题:
  如何加"or" 可以对这个页面进行两种筛选,比如:
在第5行加入 or k_name.就是说,当yy=k_sdyy 或yy=k_name时,显示此记录集中的内容.
  可是我试过这样不行,请问or应该加在哪?
<%
Dim hy_id__MMColParam
hy_id__MMColParam = "1"
If (Request.QueryString("yy") <> "") Then
hy_id__MMColParam = Request.QueryString("yy")
End If
%>
<%
Dim hy_id
Dim hy_id_numRows
Set hy_id = Server.CreateObject("ADODB.Recordset")
hy_id.ActiveConnection = MM_rs_STRING
hy_id.Source = "SELECT * FROM hy WHERE k_sdyy = '" + Replace(hy_id__MMColParam, "'", "''") + "'"
hy_id.CursorType = 0
hy_id.CursorLocation = 2
hy_id.LockType = 1
hy_id.Open()
hy_id_numRows = 0
%>
提问者采纳
hy_id__MMColParam = Replace(hy_id__MMColParam, "'", "''")
hy_id.Source = "SELECT * FROM hy WHERE CStr(k_sdyy) = '" & hy_id__MMColParam & "' Or  CStr(k_name) = '" & hy_id__MMColParam & "'"
追问
我直接粘了上去,还是不行啊
2014-02-03 23:06回答
提示什么错误?哪行?
2014-02-03 23:11追问
此页面还有一个关联记录,和这个表是一样的,当我把你给的代码也加在这个表里...出错了,那个关联表里的名字,yy号都能正确显示,唯独场时不能显示,请问这是因为什么? 

  你给我的这个语句是不是只能在一个记录集里显示
今天 00:28提问者评价
这各答案是正确的,可是....又出现了新的问题,就是这个语句好像不能用关联的数据库,关联数句显示不出
给你一个最简单的例子参考下吧:
<%
dim aa,bb
aa = 10
bb = 20

if aa = 10 or bb > 20 then
response.Write("正确!")
end if
%>
如果你还不懂请随时和我联系,必答!
追问
这个我看懂了,可是不知道怎么结合在我那里
今天 00:19回答
你没有提供完整的代码供我们参考,我们是很难帮到你的,至少你再提供发送页的代码给我们参考,或者把你的全部源码发给我看看也行?六五九八六一五二四
今天 00:22追问
全部代码,百度提示太多,不让放进来
今天 00:53回答
加:六五九八六一五二四
落叶l无情 | 五级
你可以先行判断 hy_id__MMColParam 是编号还是文字,然后根据此构造不同的sql语句。比如你的编号是纯数字的,可以用isnumric之类的判断。又比如你的编号符合某个规律之类。
追问
你好我的编号是纯数字,请问体来写一下吗?我不会编程,我只会用dreamweaver的工具做程序,可是代码不太会
2014-02-03 22:39回答
2014-02-03 23:34追问
错误类型:ADODB.Field (0x800A0BCD)BOF 或 EOF中有一个是“真”,或者当前的记录已被删除,所需的操作要求一个当前的记录。/yychenxi/show_jg.asp, 第 495行
今天 00:18回答
这个错误表示记录为空,即数据库里面没有匹配项,确认你的数据库里面k_name字段是不是编号,类型是什么(文本还是数字),以及传递的yy在数据库里是否存在。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: