| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2241 人关注过本帖
标题:奇怪的多条件判断转向---求解
取消只看楼主 加入收藏
boyfuture
Rank: 1
等 级:新手上路
帖 子:552
专家分:0
注 册:2005-12-20
结帖率:88.89%
收藏
 问题点数:0 回复次数:15 
奇怪的多条件判断转向---求解
各位大虾,又给大家提出一个比较烦恼的问题,望大家能够协助解决为盼:
这个问题是我想通过查询的内容来打开或转移到不同的页面。而且,如果两种以上查询的结果都存在,我该怎么设计,才能打开两个以上的页面,我该怎么做呢?请指教,谢谢!
<%set rs=Server.CreateObject("ADODB.RecordSet")
sql="SELECT * FROM alertdata WHERE txzt='需要提醒' and syname='"&session("UserName")&"' and szlx='每次登陆提醒' "
rs.open sql,conn,1,3%>
<% if rs.eof then%>
<%set rs=Server.CreateObject("ADODB.RecordSet")
sql="SELECT * FROM alertdata WHERE txzt='需要提醒' and syname='"&session("UserName")&"' and szlx='每周定期提醒' "
rs.open sql,conn,1,3%>
<%else%>
 <script language="javascript">
parent.getMsg2();
parent.popalertcontent.location="../weeknotice.asp";
        </script>
<% if rs.eof then%>
<%set rs=Server.CreateObject("ADODB.RecordSet")
sql="SELECT * FROM alertdata WHERE txzt='需要提醒' and syname='"&session("UserName")&"' and szlx='每月定期提醒' and rishu='"&day(date())&"' "
rs.open sql,conn,1,3%>
<%else%>
 <script language="javascript">
parent.getMsg2();
parent.popalertcontent.location="../monthnotice.asp";
        </script>
<% if rs.eof then%>
<%set rs=Server.CreateObject("ADODB.RecordSet")
sql="SELECT * FROM alertdata WHERE txzt='需要提醒' and syname='"&session("UserName")&"' and szlx='每天定时提醒' and szsj< time() "
rs.open sql,conn,1,3%>
<% if rs.eof then%>
<%set rs=Server.CreateObject("ADODB.RecordSet")
sql="SELECT * FROM alertdata WHERE txzt='需要提醒' and syname='"&session("UserName")&"' and szlx='固定时间提醒' and szrq>=date() and szsj< time() "
rs.open sql,conn,1,3%>
<%else%>
 <script language="javascript">
parent.getMsg2();
parent.popalertcontent.location="../realtimenotice.asp";
        </script>
<% if rs.eof then%>
<%  rs.Close
    Set rs = Nothing
    conn.Close
    Set conn = Nothing
    Response.End%>
    <%else%>
 <script language="javascript">
parent.getMsg2();
parent.popalertcontent.location="../popalertnotice.asp";
        </script>
<% rs.Close
    Set rs = Nothing
    conn.Close
    Set conn = Nothing%>
<%end if%><%end if%><%end if%><%end if%><%end if%>
搜索更多相关主题的帖子: 条件 求解 判断 
2008-01-28 17:11
boyfuture
Rank: 1
等 级:新手上路
帖 子:552
专家分:0
注 册:2005-12-20
收藏
得分:0 
[bo]以下是引用 [un]madpbpl[/un] 在 2008-1-28 18:35 的发言:[/bo]

为什么不用select.....case....,感觉这样写的,好不清晰啊。

实在不好意思,我没有学过,自己摸索的,不过,我可以去看看怎么使用,谢谢啊,您也帮我看看,该怎么去实现不同查询结果转向不同的页面。另,引用同一个div会不会出现错误?
2008-01-28 18:53
boyfuture
Rank: 1
等 级:新手上路
帖 子:552
专家分:0
注 册:2005-12-20
收藏
得分:0 
对了,请问个问题我从网上查询说select   case   语句是多分支处理语句,各分支不能同时执行,  如果我在查询结果中,存在多种情况,需要跳出不同的页面,是不是就不能使用这个方法?
2008-01-28 18:59
boyfuture
Rank: 1
等 级:新手上路
帖 子:552
专家分:0
注 册:2005-12-20
收藏
得分:0 
<% sql="SELECT * FROM alertdata
   case
   when txzt='需要提醒' and syname='"&session("UserName")&"' and szlx='每次登陆提醒' then
   <script language="javascript">
parent.getMsg2();
parent.popalertcontent.location="../popalertnotice.asp";
        </script>
  when txzt='需要提醒' and syname='"&session("UserName")&"' and szlx='每周定期提醒'  then
   <script language="javascript">
parent.getMsg2();
parent.popalertcontent.location="../popalertnotice.asp";
        </script>
when txzt='需要提醒' and syname='"&session("UserName")&"' and szlx='每月定期提醒' and rishu='"&day(date())&"' then
<script language="javascript">
parent.getMsg2();
parent.popalertcontent.location="../popalertnotice.asp";
        </script>
when  txzt='需要提醒' and syname='"&session("UserName")&"' and szlx='每天定时提醒' and szsj< time()    then
<script language="javascript">
parent.getMsg2();
parent.popalertcontent.location="../popalertnotice.asp";
        </script>
when txzt='需要提醒' and syname='"&session("UserName")&"' and szlx='固定时间提醒' and szrq>=date() and szsj< time() then
<script language="javascript">
parent.getMsg2();
parent.popalertcontent.location="../popalertnotice.asp";
        </script>
else
<%  rs.Close
    Set rs = Nothing
    conn.Close
    Set conn = Nothing
    Response.End%>
end
<% rs.Close
    Set rs = Nothing
    conn.Close
    Set conn = Nothing%>  改了改,是不是这样啊,但是好像不对。
2008-01-28 20:01
boyfuture
Rank: 1
等 级:新手上路
帖 子:552
专家分:0
注 册:2005-12-20
收藏
得分:0 
哦,那请问像这种情况该怎么弄呢?我想通过查询获得不同结果,采取不同的方案,我该怎么做呢?请指教!谢谢!
2008-01-28 20:02
boyfuture
Rank: 1
等 级:新手上路
帖 子:552
专家分:0
注 册:2005-12-20
收藏
得分:0 
是从数据库查询的内容(这些条件是已知的),如果查询的结果满足不同的查询条件,则打开相应的页面。

[[it] 本帖最后由 boyfuture 于 2008-1-28 21:03 编辑 [/it]]
2008-01-28 20:55
boyfuture
Rank: 1
等 级:新手上路
帖 子:552
专家分:0
注 册:2005-12-20
收藏
得分:0 
不好意思,我的表达能力欠缺,我给你举例吧:
1:数据库 name  sex age
           a        20
           b       30
           c       15
2:查询:sql= select * where  sex=男  
        if not rs.eof then
         跳到页面:男人的世界。asp
         sql= select * where  sex=女  and age>17
            if not rs.eof then
          跳到页面:女人的世界。asp
        sql= select * where  sex=女 and age<17
          if not rs.eof then
          跳到页面:女人的世界--未成年版。asp
如上述数据库内容,我应该打开三个页面:男人世界、女人世界、女人世界-未成年这三个页面,就是这样一个按照查询的内容不同弹出不同的窗口,不符合条件的则不弹出窗口,就这个意思。
请指教!谢谢!
2008-01-28 23:07
boyfuture
Rank: 1
等 级:新手上路
帖 子:552
专家分:0
注 册:2005-12-20
收藏
得分:0 
打开三个页面啊,不是只跳一个页面啊。(这么晚了还没有休息啊,佩服啊),也就是打开三个页面的窗口。不同窗口显示不同的内容。(其实,我是做的一个提醒,但是因为提醒的方式不同,需要在不同的方式下打开不同的窗口,但是都是在同一个主页面内弹出窗口,每个窗口显示不同的内容)
2008-01-29 01:23
boyfuture
Rank: 1
等 级:新手上路
帖 子:552
专家分:0
注 册:2005-12-20
收藏
得分:0 
这是我的实例,但是还是提示错误,请指教!(Microsoft VBScript 运行时错误 (0x800A01A8)缺少对象: 'rs3')
<% set rs1=Server.CreateObject("adodb.recordset")
 sql1= "SELECT * FROM alertdata WHERE txzt='需要提醒' and syname='"&session("UserName")&"' and szlx='每周定期提醒' "
   rs1.open sql1,conn,1,1
   if not rs1.eof then
  response.write "<script language='javascript'>"
   response.write "parent.getMsg2();"
    response.write "parent.popalertcontent.location(../everyweeknotice.asp;)"
   response.write "</script>"
    set rs2=Server.CreateObject("adodb.recordset")
   sql2= "SELECT * FROM alertdata WHERE txzt='需要提醒' and syname='"&session("UserName")&"' and szlx='每月定期提醒' and rishu>=day(date())"
   rs2.open sql2,conn,1,1
   if not rs2.eof then
   response.write "<script language='javascript'>"
   response.write "parent.getMsg2();"
    response.write "parent.popalertcontent.location(../everymonthnotice.asp;)"
   response.write "</script>"
   set rs3=Server.CreateObject("adodb.recordset")
   sql3= "SELECT * FROM alertdata WHERE txzt='需要提醒' and syname='"&session("UserName")&"' and and szlx='固定时间提醒' and szrq>=date() and szsj=< time() "
   rs3.open sql3,conn,1,1
   if not rs3.eof then
    response.write "<script language='javascript'>"
   response.write "parent.getMsg2();"
    response.write "parent.popalertcontent.location(../realtimenotice.asp;)"
   response.write "</script>"
   set rs4=Server.CreateObject("adodb.recordset")
   sql4= "SELECT * FROM alertdata WHERE txzt='需要提醒' and syname='"&session("UserName")&"' and szlx='每天定时提醒' and szsj< time()"
   rs4.open sql4,conn,1,1
   if not rs4.eof then
   response.write "<script language='javascript'>"
   response.write "parent.getMsg2();"
    response.write "parent.popalertcontent.location(../everydaynotice.asp;)"
   response.write "</script>"
   response.end
   end if
   end if
   end if
   end if
   rs1.close
   set rs1=nothing
   rs2.close
   set rs2=nothing
   rs3.close
   set rs3=nothing
   rs4.close
   set rs4=nothing
%>

[[it] 本帖最后由 boyfuture 于 2008-1-29 21:37 编辑 [/it]]
2008-01-29 20:09
boyfuture
Rank: 1
等 级:新手上路
帖 子:552
专家分:0
注 册:2005-12-20
收藏
得分:0 
谢谢,这个弹出窗口的问题基本解决!辛苦您了!还存在的问题是,当不符合条件,不弹出窗口时,总是提示这样的错误:
错误类型:
Microsoft VBScript 运行时错误 (0x800A01A8)
缺少对象: 'rs4'
并没有出现不符合条件不弹出窗口的结果,请教是不是还少语句呢?请指教!谢谢!

[[it] 本帖最后由 boyfuture 于 2008-1-31 08:52 编辑 [/it]]
2008-01-31 08:46
快速回复:奇怪的多条件判断转向---求解
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.032800 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved