论坛: 网站建设 标题: 请教各位一个关于广告调用的问题? 复制本贴地址    
作者: 鱼唾沫 [mozhonghai]    论坛用户   登录
各位大侠,大家好:
    我的问题是这样的,网站在后台更改了广告无法用,据我的分析是因为调用的ID受到下面代码的限制,
    下面是首页调用代码:

</table>
<table width="751" border="0" cellpadding="0" bgcolor="#FFFFFF" class="b5" align="center" cellspacing="0">
  <tr>
    <td align="center" height="105"><%Call hx66_AD(3)%></td>
  </tr>
</table>

这段代码调用后的结果是调用了ID为3的广告数据,而新增加的广告因为ID不同而无法显示,这样就不能更好的在后台操作,如果要让广告可以更好的在后台操作的,应该怎么改这段代码!

  具体要改后能达到要求:新增广告后,设置该广告生效后便能用,不受ID的限制



下面是数据库中对应的表截图(其中灰色的部分就是广告表):


下面是广告表中对应的字段截图:






由于这个作业很快就要交了,麻烦会的朋友帮个忙




[此贴被 土贼(mozhonghai) 在 10月14日20时35分 编辑过]

地主 发表时间: 07-04-17 14:37

回复: NetFog [q70213526]   版主   登录
你应该将hx66_AD这个过程/函数发上来.

B1层 发表时间: 07-04-17 15:28

回复: NetFog [q70213526]   版主   登录
你贴错了.贴出一个sub或者function

B2层 发表时间: 07-04-17 19:09

回复: 鱼唾沫 [mozhonghai]   论坛用户   登录
函数为:

Function Hx66_AD(AD_Title)
'============================================================广告调用
    set ADRS=server.createobject("adodb.recordset")
    sql="select top 1 AD_ID,AD_Title,AD_Http,AD_width,blank,AD_height,AD_Pic,AD_Note,AD_flash,AD_on,AD_Alt from Advertise where AD_on=0 and AD_ID="&AD_ID&""
    ADRS.open sql,conn,1,1
    If ADRS.bof Then
    Response.write""
    Else
    if ADRS("AD_flash")=true then
    Response.Write("<object classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000' codebase='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0' width="&ADRS("Ad_width")&" height="&ADRS("Ad_height")&"><param name='movie' value="&ADRS("Ad_Pic")&"><param name='wmode' value='transparent'><embed src="&ADRS("Ad_Pic")&" quality='high' pluginspage='http://www.macromedia.com/go/getflashplayer' type='application/x-shockwave-flash' width="&ADRS("Ad_width")&" height="&ADRS("Ad_height")&"></embed></object>")
    else
    if ADRS("AD_http")="" then
    Response.Write("<div>")
    Response.Write("<img src="&ADRS("Ad_Pic")&" width="&ADRS("Ad_width")&" height="&ADRS("Ad_height")&" border=""0"" alt="&ADRS("AD_Alt")&"></div>")
    else
    if ADRS("blank")=true then
    Response.Write("<div><a target='_blank' href="&ADRS("Ad_Http")&">")
    Response.Write("<img src="&ADRS("Ad_Pic")&" width="&ADRS("Ad_width")&" height="&ADRS("Ad_height")&" border=""0"" alt="&ADRS("AD_Alt")&"></a></div>")
    else
    Response.Write("<div><a href="&ADRS("Ad_Http")&">")
    Response.Write("<img src="&ADRS("Ad_Pic")&" width="&ADRS("Ad_width")&" height="&ADRS("Ad_height")&" border=""0"" alt="&ADRS("AD_Alt")&"></a></div>")
    end if
    end if
    End If
    End If
end Function



首页调用我将:<%Call hx66_AD(3)%>
改为:<%Call hx66_AD(AD_Title("汤逊湖青年"))%>

将    set ADRS=server.createobject("adodb.recordset")
    sql="select top 1 AD_ID,AD_Title,AD_Http,AD_width,blank,AD_height,AD_Pic,AD_Note,AD_flash,AD_on,AD_Alt from Advertise where AD_on=0 and AD_ID="&AD_ID&""

改为:    set ADRS=server.createobject("adodb.recordset")
    sql="select top 1 AD_ID,AD_Title,AD_Http,AD_width,blank,AD_height,AD_Pic,AD_Note,AD_flash,AD_on,AD_Alt from Advertise where AD_on=0 and AD_Title="&AD_Title&""


后台的广告AD_Title 字段填写的是 "汤逊湖青年"  但还是显示不出来


[此贴被 鱼唾沫(mozhonghai) 在 04月17日19时19分 编辑过]

B3层 发表时间: 07-04-17 19:17

回复: NetFog [q70213526]   版主   登录
Function Hx66_AD(AD_Title)

End Function

因为你的AD_Title参数根本就没有函数中使用.你干脆将Function Hx66_AD(AD_Title)改为Function Hx66_AD(AD_ID).

比如要调用表中的AD_ID值为3的广告.则Call Hx66_AD(3).

B4层 发表时间: 07-04-17 19:47

回复: 鱼唾沫 [mozhonghai]   论坛用户   登录
这个程序原来就是Function Hx66_AD(AD_ID)和Call Hx66_AD(3)的,但这样做在后台如果删除了ID为3的这条数据后新建数据ID就不一样了,结果就会造成主页调用广告出现错误,无法调用!

B5层 发表时间: 07-04-17 19:53

回复: NetFog [q70213526]   版主   登录
代码:

set ADRS=server.createobject("adodb.recordset")
sql="select top 1 AD_ID,AD_Title,AD_Http,AD_width,blank,AD_height,AD_Pic,AD_Note,AD_flash,AD_on,AD_Alt from Advertise where AD_on=0 and AD_Title='"&AD_Title&"'"



调用时-->  Call Hx66_AD("广告标题名称")

B6层 发表时间: 07-04-17 21:07

回复: NetFog [q70213526]   版主   登录
你的少了个单引号.

B7层 发表时间: 07-04-17 21:08

回复: 鱼唾沫 [mozhonghai]   论坛用户   登录
问题已经解决,谢谢版主的热心解决!

B8层 发表时间: 07-04-17 22:07

论坛: 网站建设

20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon

粤ICP备05087286号