深圳升蓝软件
数据库开发 .Net技术  |  ASP技术 PHP技术 JSP技术 应用技术类   
Hiblue Software

构建你的网站新闻自动发布系统之一


March 25,2004
    更新每天新闻内容,对webmaster们来说是一件很头痛的事,首先,收集了大量的新闻资料后,还必须制作大量的网页,每天大大小小的国际新闻,国内新闻,IT新闻,可真够你累的。最致命的一点,这些松散的新闻是管理不了的,不能查询,不能在线动态删改,新闻讲求时效性,当你作好网页然后上传到服务器上的时侯,恐怕别人已早你一步,把新闻报导出来了。当真吃力不讨好,针对现在我们的上网环境,在线发布新闻,动态生成新闻网页,为新闻添加搜索,查找功能是必不可少的。
   
      那么,使用ASP技术如何来实现动态的新闻发布系统呢?而新闻系统的做法大致上有两种,一就是把录入的新闻内容自动由程序直接生成html文件,比如按日期和新闻ID号来做htm文件的名称,我们常常可以从一些大的新闻站看到这样的处理。而另一种就是直接把新闻数据保存到数据库里,当用户阅读新闻时。从数据库中调出数据,动态生成页面。
   
      两种处理有何差别?第一种的显示速度和对服务器的负何来说,是最轻的。对于大流量的站点,速度就是生命,网站太慢了,有谁去浏缆呢?后一种方法在处理上比教简便。维护也方便,还有一种就是两种双结何,因为只有应用数据库才能方便地处理查询,从而把读者引导至相应的新闻页面,综合上面的方法,可以说都是各有千秋,现在我们主要介绍使用数据库的那种动态页面方法。
   
   
      从处理流程上来说,主要是提供一个管理新闻的页面(可以添加和删除每天的新闻,包括新闻图片,标题等),然后在到调用新闻的显示页面处理。考滤到新闻需要插到不同风格的网页中,所以不能使用一个固定格式的页面来显示新闻提要。应当把它们做成一个主页的可插入部分,那么就可以在不同风格的页面上调用新闻了。就如下面的script语句
   
   
      《script language="JavaScript"
    src="http//xxx.com.cn/special/linux/lnews/autoup.asp"》
    《/script》
      最后还有一个阅读新闻时的详细内容页面。总的来说,也就是一个可以完成在线新闻发布的程序主要由四大部分程序构成
   
      addnew.asp(用于把新闻数据保存到数据库中)delete.asp(用于处理删除新闻)
   
      autoup.asp(用于处理新闻的标题显示,也就是插入主页的部分)read.asp(动态生成新闻的详细内容)
   
      附助处理的部分有set_disp.asp(用于处理新闻在主页的显示数目等等)
   
      当然,必不可少的就是一个新闻数据库了。
      
    (一)构建新闻数据库
      分析一下构成每条新闻的元素,主要由新闻标题,新闻内容,图片地址,连接地址,新闻的发布时间组成。而在构建数据库的时候。考虑到处理需要,必需加上新闻的ID号,以便识别。再者的话,可以加上点击统计,以便了解读者感性趣的内容。Access数据库是一个非常适合于开发阶段使用的过度时期数据库,因此。我们构造如下的一个新闻数据库(data.mdb)
   
      表data
      news_id       long  新闻的编号
      news_class     text   新闻的类别
      news_class_name  text   新闻的类别名
      news_title      text   新闻的标题
      news_head     logic   是否首页显示
      news_comment   comment 新闻的内容
      news_year      text   新闻的年份
      news_month     text   新闻的月份
      news_day      text   新闻的内容
      news_time      text   更新时间
      news_delete     logic  删除标志
   
      按上述的要求建好这个表,当我们经过测试稳定后,就可以把新闻数据库转入SQL
    server里面
    了。好了,接这下来的这步,我们一起来做一个新闻的管理页面,为了布局和管理方便,我们采用
   
    框架结构做出如下的面页。Webadmin.htm框架的主文件。
   
    《html》
   
    《head》
    《meta http-equiv="Content-Type" content="text/html; charset=gb2312"》
   
    《title》新闻发布系统管理页《/title》
    《meta name="GENERATOR" content="Microsoft FrontPage 3.0"》
    《/head》
   
    《frameset framespacing="0" rows="*,14%"》
    《frame name="main" target="footnotes" src="webadmin.asp"
    scrolling="auto"》
    《frame name="footnotes" src="delete.asp" scrolling="auto"》
   
    《noframes》
    《body》
    《p》This page uses frames, but your browser doesn't support them.《/p》
    《/body》
    《/noframes》
    《/frameset》
    《/html》
   
   
    而面包含的文件是webadmin.asp这个文件。主要由它提供录入新闻的每天更新界面,代码如下。
   
    《html》
   
    《head》
    《meta http-equiv="Content-Type" content="text/html; charset=gb2312"》
   
    《style TYPE="text/css"》
    《!--
    .lh22px {font-size:12px;line-height:22px;font-family:宋体}
    a { text-decoration: none}
    body {line-height:18px;font-size:9pt;font-family:宋体}
    td {line-height:18px;font-size:9pt;font-family:宋体}
    a:hover {color:#FF0000;text-decoration:none}
    --》
    《/style》
    《base target="footnotes"》
    《title》新闻发布系统管理页《/title》
    《/head》
   
    《body topmargin="8" leftmargin="8"》
   
    《p align="center"》《font face="楷体_GB2312" size="6"
    color="#FF0000"》《strong》新闻发布系统WEB管理页《/strong》《/font》《/p》
   
    《div align="center"》《center》
   
    《table border="0" width="100%" cellspacing="0"
    cellpadding="0"》
    《tr》
    《td width="100%"》《form method="POST"
    action="addnew.asp"》
    《table border="0" width="100%" height="126"
    cellpadding="0"》
    《tr》
    《td width="100%" height="9" colspan="2"
    bgcolor="#E7E7E7"》《div align="center"》《center》《p》《font
   
    size="3"》《strong》添加每天新闻内容《/strong》《/font》《/td》
   
    《/tr》
    《tr align="center"》
    《td width="15%" height="8" bgcolor="#E7E7E7"》《div
    align="left"》《p》新闻标题:(必须)《/td》
    《td width="85%" height="8" bgcolor="#F9F9F9"》《div
    align="left"》《p》《input type="text"
    name="title" size="73"》《/td》
    《/tr》
    《tr align="center"》
    《td width="15%" height="34" bgcolor="#E7E7E7"
    valign="top"》《div align="left"》《p》新闻内容:(必须)《/td》
   
    《td width="85%" height="34" bgcolor="#F9F9F9"》《div
    align="left"》《p》《textarea rows="13"
    name="comment" cols="72"》《/textarea》《/td》
    《/tr》
    《tr align="center"》
    《td width="15%" height="17" bgcolor="#E7E7E7"》《div
    align="left"》《p》图片连接地址:《/td》
    《td width="85%" height="17" bgcolor="#F9F9F9"》《div
    align="left"》《p》《input type="text"
    name="pic" size="73"》《/td》
    《/tr》
    《tr align="center"》
    《td width="15%" height="17" bgcolor="#E7E7E7"》《div
    align="left"》《p》新闻类型:(必须)《/td》
    《td width="85%" height="17" bgcolor="#F9F9F9"》《div
    align="left"》《p》《select
    name="class_name" size="1" value="《%=session("class_name")%》"》
   
    《option value="市场风云"》市场风云《/option》
    《option value="IT新闻"》IT新闻《/option》
    《option value="广州市场"》广州市场《/option》
    《option value="保 留"》保 留《/option》
    《option value="保 留"》保 留《/option》
    《/select》《/td》
    《/tr》
    《tr align="center"》
    《td width="15%" height="17" bgcolor="#E7E7E7"》《div
    align="left"》《p》是否首页:《/td》
    《td width="85%" height="17" bgcolor="#F9F9F9"》《div
    align="left"》《p》《input type="checkbox"
    name="head" value="YES"》《/td》
    《/tr》
    《tr align="center"》
    《td width="100%" height="16" colspan="2"
    bgcolor="#E7E7E7"》《div align="center"》《center》《p》《input
   
    type="submit" value="提 交" name="B1"》      《input
    type="reset"
    value="清 除" name="B2"》《/td》
    《/tr》
    《/table》
    《/form》
    《/td》
    《/tr》
    《/table》
    《/center》《/div》《div align="center"》《center》
   
    《table border="0" width="750" cellpadding="0"》
    《tr》
    《td width="740"》《/td》
    《/tr》
    《tr》
    《td width="740"》《form method="POST"
    action="set_disp.asp"》
    《table border="0" width="100%" cellpadding="0"》
    《tr》
    《td width="100%" bgcolor="#E7E7E7" colspan="5"》《div
    align="center"》《center》《p》首页新闻显示条数设置《/td》
    《/tr》
    《tr》
    《td width="20%"》《div align="center"》《center》《p》广州市场《/td》
   
    《td width="20%"》《div align="center"》《center》《p》市场风云《/td》
   
    《td width="20%"》《div align="center"》《center》《p》IT新闻《/td》
   
    《td width="20%"》《div align="center"》《center》《p》保 留《/td》
   
    《td width="20%"》《div align="center"》《center》《p》保 留《/td》
   
    《/tr》
    《tr》
    《td width="20%"》《div align="center"》《center》《p》《input
    type="text" name="disp_1" size="10"
    value="《%=application("disp_1")%》"》《/td》
    《td width="20%"》《div align="center"》《center》《p》《input
    type="text" name="disp_2" size="10"
    value="《%=application("disp_2")%》"》《/td》
    《td width="20%"》《div align="center"》《center》《p》《input
    type="text" name="disp_3" size="10"
    value="《%=application("disp_3")%》"》《/td》
    《td width="20%"》《div align="center"》《center》《p》《input
    type="text" name="disp_4" size="10"
    value="《%=application("disp_4")%》"》《/td》
    《td width="20%"》《div align="center"》《center》《p》《input
    type="text" name="disp_5" size="10"
    value="《%=application("disp_5")%》"》《/td》
    《/tr》
    《tr》
    《td width="100%" bgcolor="#E7E7E7" colspan="5"》《div
    align="center"》《center》《p》《input
    type="submit" value="提 交" name="B1"》      《input
    type="reset"
    value="清 除" name="B2"》《/td》
    《/tr》
    《/table》
    《/form》
    《/td》
    《/tr》
    《tr》
    《td width="740"》《/td》
    《/tr》
    《tr》
    《td width="740"》《font color="#FF0000"》附注《/font》 新闻标题:即为显示在主页中的连接标题,因此不可省略。《/td》
   
    《/tr》
    《tr》
    《td width="740"》   新闻内容:为点击标题连接后窗口所打开显示的新闻内容,也不允许省略。《/td》
   
    《/tr》
    《tr》
    《td width="740"》   新闻图片:新闻包含图片,请把图片地址连接复制在此,以便显示图片《/td》
   
    《/tr》
    《tr》
    《td width="740"》   新闻类型:选择新闻在不同栏目中显示的位置《/td》
   
    《/tr》
    《tr》
    《td width="740"》   是否首页:如首页的综合新闻包需含图片,请复选此项《/td》
   
    《/tr》
    《tr》
    《td width="740"》《p align="center"》《a
    href="index.asp" target="_parent"》返回新闻首页《/a》《/td》
   
    《/tr》
    《/table》
    《/center》《/div》
    《/body》
    《/html》
   
      好了,下节“添加每天的新闻内容”将为您介绍如何对新闻数据进行处理,请先按步骤建立好上面的编程环境。
Copyright © 2001-2008 Shenzhen Hiblue Software Team All rights reserved