设为首页收藏本站

新微赢技术网

 找回密码
 注册
搜索
热搜: 回贴
查看: 97|回复: 7
打印 上一主题 下一主题

请教:关于广告到期的代码

[复制链接]
跳转到指定楼层
1#
发表于 2010-1-11 00:05:33 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我要表达的意思是如果该广告位无图片或者广告到期,则显示“虚位以待”的图片,
代码是这样的,其中adend是指广告到期的时间
<!--#include file="conn.asp"-->
<%
  set rs=server.creatobject("adodb.recordset")
  sql="select * from ad where number='0001'"
  rs.open sql,conn,1,1
if not rs.eof and now()< rs("adend")then
%><img height="90" width="345" scr="<%=rs("pic")%>"/><%else%>><img height="90" width="345" scr"123.gif"/><%end if%>
这样写代码有问题吗,为什么要提示我发生意外?
2#
发表于 2010-1-11 00:05:37 | 只看该作者
广告截止时间字段为adend ,要怎样表示如果超过截止时间就不显示?
回复 支持 反对

使用道具 举报

3#
发表于 2010-1-11 00:05:41 | 只看该作者
写程序就要严谨。
在我看来,我要是写下<a href=http://www.baidu.com>百度</a>就是错的,因为属性值没有用引号。

至于你的程序,是逻辑有问题了。
回复 支持 反对

使用道具 举报

4#
发表于 2010-1-11 00:05:45 | 只看该作者
您的程序缩进风格有待提高。

程序代码:
<%
  set rs1=server.CreateObject("adodb.recordset")
  sql1="select * from ad where adsite='0003'"
  rs1.open sql1,conn,1,1
  if (not rs1.eof) and (now()<rs1("adend")) then ' 严谨的代码要打括号的。
    if rs1("link")="1" then ' 建议用Select Case语句代替
      response.Write"<a href="&rs1("web")&">"
    elseif rs1("link")="2" then
      response.Write"<a href=model.asp?id="&rs1("id")&">"
    elseif rs1("link")="3" then
      response.Write"<a href="&rs1("adpage")&">"
    end if
    response.Write"<img height=90 width=245 src="&rs1("pic")&" border=0 />"
  else ' 逻辑有错!!运行到这里,应当有rs1.eof or (now>=rs1("adend")) 你觉得合适吗?
    response.Write"<img height=90 width=245 src=images/upload/2008101122552444554.jpg />"
  end if
%>

输出的a标签那段我就没看懂,假装你后面有代码闭合a标签我就不管了。
建议你自己先在纸上画好流程图,然后再写代码。
回复 支持 反对

使用道具 举报

5#
发表于 2010-1-11 00:05:49 | 只看该作者
a标签是指如果用户选择的图片的链接方式为1,则链接网站,2则链接模板,3则链接自制网站,这些是可以运行,只是代码的严谨性上有待改进,谢谢斑竹
回复 支持 反对

使用道具 举报

6#
发表于 2010-1-11 00:05:53 | 只看该作者
刚才一时心急打错了,源代码是这样下的
<%
   set rs1=server.CreateObject("adodb.recordset")
   sql1="select * from ad where adsite='0003'"
   rs1.open sql1,conn,1,1
   if not rs1.eof and now()<rs1("adend") then
   if rs1("link")="1" then
   response.Write"<a href="&rs1("web")&">"
   elseif rs1("link")="2" then
   response.Write"<a href=model.asp?id="&rs1("id")&">"
   elseif rs1("link")="3" then
   response.Write"<a href="&rs1("adpage")&">"
   end if
   response.Write"<img height=90 width=245 src="&rs1("pic")&" border=0 />"
   else
   response.Write"<img height=90 width=245 src=images/upload/2008101122552444554.jpg />"
   end if%>

如果去掉and now()<rs1("adeend") 是可以正常显示的,加上了就提示出现意外了
回复 支持 反对

使用道具 举报

7#
发表于 2010-1-11 00:05:56 | 只看该作者
img有scr属性还是第一次听说。至于属性可以不加等号的就更是新鲜了。
creatobject方法我还是在你程序里才见过。
不管if的结果是真是假,你输出的HTML代码都不正常,一个少了大于号一个多了大于号。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

申请友链|小黑屋|最新主题|手机版|新微赢技术网 ( 苏ICP备08020429号 )  

GMT+8, 2024-11-19 12:16 , Processed in 0.118212 second(s), 8 queries , Gzip On, Memcache On.

Powered by xuexi

© 2001-2013 HaiAn.Com.Cn Inc. 寰耽

快速回复 返回顶部 返回列表