当前位置: 首页 > 图文教程 > 网络编程 > ASP > 构建你的网站新闻自动发布系统之四

ASP
用XML数据岛解决用户界面问题 - 1
用XML数据岛解决用户界面问题 - 2
用XML数据岛解决用户界面问题 - 3
关于ASP中堆栈溢出错误的解决
运用asp结合vbscript模拟股票滚屏
如何在VC++ 编写的组件中使用 ADO
VBSctipt 5.0中的新特性
ASP.NET中使用多个runat=server form
ASP.NET中的XML表单控件
页面之间传递元素的办法
转换文本为超联和Email格式的代码
vbscript和javascript互相调用
用VB6创建MTS组件
连接各种数据库的代码的总结
数据排序及如何动态排序
将HTML表单数据存储为XML格式
关于打印页面的一些经验
用vbscript判断email地址的合法性
可以近视替代remote script的代码
利用MSCHART画图的一段代码

ASP 中的 构建你的网站新闻自动发布系统之四


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 26 ::
收藏到网摘: n/a

      紧接上节,我们的新闻系统已能完成日常的新闻在线添加,删除等的功能,但这还是不足够的,有的用户可能需要查找一下过往某一专题内容的相关新闻条目,而一个比教完善的新闻系统,当然少不免也的完成这个功能。
  现在马上就为我们的新闻系统添加上(全文/标题)的检索功能吧,首先我们做一个检索表单,见下面的HTML代码,把这些代码放在需要新闻检索的web页面上。就可以供用户方便地完成新闻搜寻。
《form method="POST" action="http://XXX..com.cn/cgi-win/search/search.asp"》
《p》《select name="select" size="1"》
《option selected value="search_1"》新闻检索(标题)《/option》
《option value="search_2"》新闻检索(全文)《/option》
《/select》《input type="text" name="key" size="20"》《input type="submit" value="搜 索"
name="search"》《/p》
《/form》

在这个FORM的基础添加上处理搜寻的ASP程序search.asp。在表单用我们用key这个参数来指示出需要匹配的字串,而select参数指定是基于全文搜索还是标题搜索。
  现在进入程序处理部份,看看我们的search.asp程序。
*search.asp
《% @language="vbscript" %》
《%
if request.form("key")="" then
response.redirect "/"
end if

select case request.form("select")
case "search_1"
%》
《!--#include Virtual="/cgi-win/search/news/data.inc"--》
《%
  Set rs_1 = Server.CreateObject("ADODB.Recordset")
  sql="select * from data where instr(news_title,'"&request.form("key")&"')》0"
  sql=sql+" Order by news_id Desc,news_class ASC"
  rs_1.open sql,conn_1,3,2
case "search_2"
%》
《!--#include Virtual="/cgi-win/search/news/data.inc"--》
《%
  Set rs_1 = Server.CreateObject("ADODB.Recordset")
  sql="select * from data where instr(news_comment,'"&request.form("key")&"')》0"
  sql=sql+" Order by news_id Desc,news_class ASC"
  rs_1.open sql,conn_1,3,2


end select


if rs_1.bof then
response.redirect "/"
response.end
end if

rs_1.movefirst

dispmess="《table border=0 width=100% cellpadding=0 cellspacing=0 class=a9》"
disp=""


do while not rs_1.eof
if not rs_1.eof then
disp=disp&"《tr》《td》《a href=http://www.aaaaa.com.cn/news/read.asp?news_id="&rs_1("news_id")&" target=_blank》》》"&rs_1("news_title")&"《font size=1》("&rs_1("news_month")&"-"&rs_1("news_day")&")《/font》《/a》《/td》《/tr》《/p》"
rs_1.movenext
end if
loop
dispmess=dispmess&disp

dispmess=dispmess&"《/table》"
'dispmess="document.write('"&dispmess&"')"


%》
《%=dispmess%》
  通过传入的KEY参数和select(全文或标题检索参数),生成一条SQL查询语句,分别在标题的数据库字段或在内容的字段中查找是否包含有key的字串,如过有的话就加如我们的结果记录集,最后把新闻标题显示出来。而输出界面当然可以满足您个人的需要,自己来定制,这里不采用分页来显示了。大家可以在这个新闻发布系统的基础上,结合您本身的需要,把它设计得更为完美。
  至此,我们的这套个人网站自动新闻发布系统基本上制作完毕了。