一个基于ASP的标题广告管理系统(二)

广告

   二、管理功能

   管理部分共有12个asp文件,这些脚本的主要功能分别如下:

BannerAdminLogin.asp:管理功能的登录页面。默认的用户名称是“ADMIN USER”,密码是“PASSWORD”。
CheckBannerAdministrationPassword.asp:检查使用管理功能的用户的密码。
NotLoggedIn.asp:“没有登录”提示页面,如果在登录之前访问管理页面,则显示该页面。
BannerAdministration.asp:这是管理功能的主界面,列出了所有的广告,并提供两个按钮。这两个按钮分别用于新增广告和新增广告客户。点击广告客户名字可以编辑该广告客户,点击广告文本可以编辑该广告。
Advertisement.asp:输入新广告的信息,或编辑当前广告信息,或调用DeleteAdvertisement.asp删除当前广告。
Advertiser.asp:输入新广告客户的信息,或编辑当前广告客户信息,或调用
DeleteAdvertiser.asp删除当前广告客户。
AddAdvertisement.asp:新增广告记录,从Advertisement.asp表单获取信息,存储到数据库。
AddAdvertiser.asp:新增广告客户记录,从Advertiser.asp表单获取信息,存储到数据库。
UpdateAdvertisement.asp:从Advertisement.asp表单获取信息,更新数据库中与当前广告具有相同AdvertisementID的记录。
UpdateAdvertiser.asp:获取Advertiser.asp表单信息,更新数据库中与当前广告客户具有相同AdvertiserID的记录。
DeleteAdvertisement.asp:根据当前选中广告的AdvertisementID,删除数据库中的相应记录。注意:删除并返回管理主界面后有时需要重新刷新。
DeleteAdvertiser.asp:根据当前选中广告客户的AdvertiserID,删除相应的数据库记录。

                  【图1】

   完整代码请从本文后面下载。假设所有文件均在inetpubScripts目录下,则登录管理功能的URL为:http://localhost/scripts/BannerAdminLogin.asp。所有其他功能均可从此开始访问。

   接下来我们介绍管理功能脚本中的一些关键问题。

   ㈠ 安全

   大多数执行管理功能的页面受密码保护,这些页面在执行其任务之前都会检查一个SESSION变量以确认用户已经成功地登录。检查代码如下所示:

 ' 检查用户是否已经登录
 If SESSION( "LoggedIn" ) <> true Then
  Response.Redirect( "NotLoggedIn.asp" )
 End If
   这里所采用的安全机制较为简单,更多的说明参见《在ASP应用中验证用户身份》。

   ㈡ 列出所有的广告

   BannerAdministration.asp页面启动时会列出数据库中的所有广告记录。这部分功能通过一个简单的查询和一个记录集对象完成,如下所示:

 '列出数据库中的所有广告
Set cn = Server.CreateObject( "ADODB.Connection" )
  cn.Open "BannerBuddy"
  Set rs = Server.CreateObject( "ADODB.RECORDSET" )
  Set rs2 = Server.CreateObject( "ADODB.RECORDSET" )
  strSql = "SELECT * FROM Advertisement"
  rs.Open strSql, cn
  strCRLF = Chr( 13 ) + Chr( 10 )
  While not rs.EOF and not rs.BOF
  ' 根据广告客户编号(AdvertiserID)查找客户名称
  strSql = "SELECT Name From Advertiser where AdvertiserID = " + _
  CStr( rs.Fields( "AdvertiserID" ) )
  rs2.Open strSql, cn
  strAdvertiser = ""
  If not rs2.EOF and not rs2.BOF Then
  strAdvertiser = rs2.Fields( "Name" )
  End If
  Response.Write( "</tr>" + strCRLF )
  rs2.Close
  rs.MoveNext
  Wend
   系统假定数据库db.mdb的ODBC DSN为BannerBuddy,因此在运行程序之前必需设置好这个DSN。有关数据库连接和操作的更多说明,参见《ASP应用中数据库记录的选取与过滤》。

   在广告清单中,单击广告客户名字可以编辑该广告客户的信息,单击“文本/图形”栏中的文本可以编辑该广告的信息,单击图片链接可以查看图片。

   ㈢ 新增、修改广告和广告客户

   AddAdvertisement.asp和AddAdvertiser.asp这两个脚本的任务是获取提交给它们的表单数据,创建广告客户或广告数据库记录。下面的代码用于新增广告记录,新增广告客户(AddAdvertiser.asp)的代码也类似,此处略。

 ' 连接到数据库,创建记录集对象rs,略...
 strStartDate = Request.Form( "StartMonth" ) + "/" + _
  Request.Form( "StartDay" ) + "/" + _
  Request.Form( "Startyear" )
 strEndDate = Request.Form( "EndMonth" ) + "/" + _
  Request.Form( "EndDay" ) + "/" + _
  Request.Form( "Endyear" )
 
 nStatus = 1
 If UCase( Request.Form( "Status" ) ) = "INACTIVE" Then
  nStatus = 0
 End If
 
 ' 根据所选择的广告客户名字,获取其编号
 nAdvertiserID = 1
 strSql = "select AdvertiserID from Advertiser where Name = '" + _
  Request.Form( "Advertiser" ) + "'"
 rs.Open strSql, cn
 If not rs.EOF and not rs.BOF Then
  nAdvertiserID = rs.Fields( "AdvertiserID" )
  If IsNull( nAdvertiserID ) Then
  nAdvertiserID = 1
  End If
 End If
 
 ' 生成一个新的广告编号
 nAdvertisementID = 1
 strSql = "select AdID=Max( AdID ) from Advertisement"
 rs.Close
 rs.Open strSql, cn
 If not rs.EOF and not rs.BOF Then
  nAdvertisementID = rs.Fields( "AdID" ) + 1
  If IsNull( nAdvertisementID ) Then
  nAdvertisementID = 1
  End If
 End If
 
 ' 插入新广告记录的SQL命令
 strSql = "insert into Advertisement " + _
  "( AdvertiserID, Status, ImageURL, " + _
  "ImageWidth, ImageHeight, Link, " + _
  "AltText, Weight, StartDate, EndDate, " + _
  "ViewLimit, ClicksLimit, AdID ) Values ( "
 strSql = strSql + CStr( nAdvertiserID ) + ", "
 ' 加上其他字段值,略...
 strSql = strSql + CStr( nAd

时间: 2024-11-03 05:58:33

一个基于ASP的标题广告管理系统(二)的相关文章

一个基于ASP的标题广告管理系统(转)(一)

广告 标题广告是Web上最常见的广告形式.本文介绍了一个基于IIS和ASP的标题广告管理系统,该系统支持广告客户和广告的管理,能够随机选择广告并生成显示广告的HTML代码(但参考广告的等级.显示次数限制.点击次数限制),并能够记录广告显示.点击的历史纪录. 一.数据库表结构 标题广告也就是Banner Ad,是Web上最常见的广告形式.本文介绍的标题广告管理系统利用Access数据库db.mdb来保存数据.db.mdb包含三个表:Advertisement保存有关广告的信息,Advertiser

一个基于ASP的标题广告管理系统(一)

广告 标题广告是Web上最常见的广告形式.本文介绍了一个基于IIS和ASP的标题广告管理系统,该系统支持广告客户和广告的管理,能够随机选择广告并生成显示广告的HTML代码(但参考广告的等级.显示次数限制.点击次数限制),并能够记录广告显示.点击的历史纪录. 一.数据库表结构 标题广告也就是Banner Ad,是Web上最常见的广告形式.本文介绍的标题广告管理系统利用Access数据库db.mdb来保存数据.db.mdb包含三个表:Advertisement保存有关广告的信息,Advertiser

一个基于ASP的标题广告管理系统(转)(二)

广告 二.管理功能 管理部分共有12个asp文件,这些脚本的主要功能分别如下: BannerAdminLogin.asp:管理功能的登录页面.默认的用户名称是"ADMIN USER",密码是"PASSWORD". CheckBannerAdministrationPassword.asp:检查使用管理功能的用户的密码. NotLoggedIn.asp:"没有登录"提示页面,如果在登录之前访问管理页面,则显示该页面. BannerAdministr

一个基于ASP的标题广告管理系统(三)

广告 三.显示广告 这部分程序主要有如下四个目的:第一,参考各个广告的显示等级,随机选择本次显示的广告:第二,更新数据库中该广告的显示次数:第三,输出标题广告的HTML代码:第四,在数据库历史表中保存显示和点击历史纪录. 实现上述功能的脚本主要有两个: ShowBanner.asp:确定本次调用要显示的广告,更新显示次数记录,生成标题广告的HTML代码. Redirect.asp:重定向页面.ShowBanner.asp生成的广告HTML代码将调用该脚本,由该脚本记录点击历史数据.重定向到广告客

基于IIS和ASP的标题广告管理系统(一)

    标题广告是Web上最常见的广告形式.本文介绍了一个基于IIS和ASP的标题广告管理系统,该系统支持广告客户和广告的管理,能够随机选择广告并生成显示广告的HTML代码(但参考广告的等级.显示次数限制.点击次数限制),并能够记录广告显示.点击的历史纪录. 一.数据库表结构 标题广告也就是Banner Ad,是Web上最常见的广告形式.本文介绍的标题广告管理系统利用Access数据库db.mdb来保存数据.db.mdb包含三个表:Advertisement保存有关广告的信息,Advertise

基于IIS和ASP的标题广告管理系统(二)&amp;nbsp;

二.管理功能 管理部分共有12个asp文件,这些脚本的主要功能分别如下: BannerAdminLogin.asp:管理功能的登录页面.默认的用户名称是"ADMIN USER",密码是"PASSWORD". CheckBannerAdministrationPassword.asp:检查使用管理功能的用户的密码. NotLoggedIn.asp:"没有登录"提示页面,如果在登录之前访问管理页面,则显示该页面. BannerAdministrati

vs2010-用VS2010编学基于ASP.NET的教务管理系统

问题描述 用VS2010编学基于ASP.NET的教务管理系统 关于排课求大神给个简单易行的方法,添加完老师,课程之后,怎么由系统自动生成课表使同一个老师的课程没有时间冲突 解决方案 可以使用尝试法,先按照课程要求排一个课表,然后检查冲突,用另一种排法代替,逐步消除冲突,最后实现.相当于广度优先遍历.或者回溯算法.

数据库-求大神帮忙写一个基于java的学生学籍管理系统

问题描述 求大神帮忙写一个基于java的学生学籍管理系统 具体功能有:1)设计入学.管理及查询界面 2)设计学生各学期.学年成绩输入及查询界 面,并打印各项报表 3)根据各年度总成绩,查询.输出学生学籍管理方案(优秀,合格,试读,退学) 4)毕业管理 5)系统维护,如数据安全管理(含系统备份 与恢复),操作员管理,权限设置 解决方案 这个说起来简单,但是要做的话还是要一点时间的,这应该是一个毕业设计的课题呀 解决方案二: 你确定你不花钱或者撒个娇有人会花时间帮你做这个 解决方案三: 需要定制么?

求一个基于asp.net的自动题库系统

问题描述 正在学习C#可是知识零零散散不会拼凑,求哪位代码大神能够给我一个用asp.net写的自动题库系统,相同代码系统也可以,我很需要,非常感谢!!!~ 解决方案 解决方案二:参考这个?解决方案三:我觉得应该先看书,然后跟着书后的项目做一遍解决方案四:http://www.51aspx.com/code/SGLNetworkOnlineExamination