| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2241 人关注过本帖
标题:奇怪的多条件判断转向---求解
只看楼主 加入收藏
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
madpbpl
Rank: 4
等 级:贵宾
威 望:11
帖 子:2876
专家分:244
注 册:2007-4-5
收藏
得分:0 
如果三个条件都搜到呢,到底跳到哪个页面?
2008-01-28 23:12
boyfuture
Rank: 1
等 级:新手上路
帖 子:552
专家分:0
注 册:2005-12-20
收藏
得分:0 
打开三个页面啊,不是只跳一个页面啊。(这么晚了还没有休息啊,佩服啊),也就是打开三个页面的窗口。不同窗口显示不同的内容。(其实,我是做的一个提醒,但是因为提醒的方式不同,需要在不同的方式下打开不同的窗口,但是都是在同一个主页面内弹出窗口,每个窗口显示不同的内容)
2008-01-29 01:23
madpbpl
Rank: 4
等 级:贵宾
威 望:11
帖 子:2876
专家分:244
注 册:2007-4-5
收藏
得分:0 
以下程序测试通过,不知道是否满足楼主的需求
<!--#include file="conn.asp"-->
<%
   set rs=Server.CreateObject("adodb.recordset")
   sql= "select * from ta where sex='男'"
   rs.open sql,conn,1,1         
   if not rs.eof then
   response.write "<script language='javascript'>"
   response.write "window.open('111.asp','female');"
   response.write "</script>"
   set rs1=Server.CreateObject("adodb.recordset")
   sql1= "select * from ta where sex='女'  and age>17"
   rs1.open sql1,conn,1,1
   if not rs1.eof then
   response.write "<script language='javascript'>"
   response.write "window.open('222.asp','male');"
   response.write "</script>"
   set rs2=Server.CreateObject("adodb.recordset")
   sql2= "select * from ta where  sex='女' and age<17"
   rs2.open sql2,conn,1,1
   if not rs2.eof then
   response.write "<script language='javascript'>"
   response.write "window.open('333.asp','child');"
   response.write "</script>"
   response.end
   end if
   end if
   end if
   rs.close
   set rs=nothing
   rs1.close
   set rs1=nothing
   rs2.close
   set rs2=nothing
%>

[[it] 本帖最后由 madpbpl 于 2008-1-29 03:30 编辑 [/it]]
2008-01-29 02:48
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
madpbpl
Rank: 4
等 级:贵宾
威 望:11
帖 子:2876
专家分:244
注 册:2007-4-5
收藏
得分:0 
response.write "parent.getMsg2();"
检查一下这句话,是否调用了getMsg2()
先写成一句测试,如果可以慢慢累加!
2008-01-30 02:02
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
madpbpl
Rank: 4
等 级:贵宾
威 望:11
帖 子:2876
专家分:244
注 册:2007-4-5
收藏
得分:0 
如果条件不成立时,即
if rs.eof and rs.bof成立
则end if
而且底部就不加
rs.close
set rs=nothing
2008-01-31 10:33
boyfuture
Rank: 1
等 级:新手上路
帖 子:552
专家分:0
注 册:2005-12-20
收藏
得分:0 
老大,增加了上述内容后反倒弹不出窗口了,似乎测试中,增加了end if 时,好像语句不再往下执行,就终止了。另外还存在这么个问题,如果查询结果为空的时候,提示错误,提示信息和上边说过的一样。这是我修改过的示例:
 set rs=Server.CreateObject("adodb.recordset")
 sql= "SELECT * FROM alertdata WHERE txzt='需要提醒' and syname='"&session("UserName")&"' and szlx='每次登陆提醒' "
   rs.open sql,conn,1,1
   if not rs.eof then
  response.write "<script language='javascript'>"
   response.write "parent.getMsg6();"
   response.write "</script>"
   if rs.eof and rs.bof
   end if
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 "</script>"
    if rs1.eof and rs1.bof
   end if 请继续指正,谢谢!
2008-01-31 15:44
madpbpl
Rank: 4
等 级:贵宾
威 望:11
帖 子:2876
专家分:244
注 册:2007-4-5
收藏
得分:0 
现在是三个条件,你不妨实现一个条件时的情况,成功后再把另两个条件也加上
2008-01-31 15:48
快速回复:奇怪的多条件判断转向---求解
数据加载中...
 
   



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

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