用asp构建你的网站新闻发布(四)
网络之门
紧接上节,我们的新闻系统已能完成日常的新闻在线添加,删除等的功能,但这还是不足够的,有的用户可能需要查找一下过往某一专题内容的相关新闻条目,而一个比教完善的新闻系统,当然少不免也的完成这个功能。
现在马上就为我们的新闻系统添加上(全文/标题)的检索功能吧,首先我们做一个检索表单,见下面的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的字串,如过有的话就加如我们的结果记录集,最后把新闻标题显示出来。而输出界面当然可以满足您个人的需要,自己来定制,这里不采用分页来显示了。大家可以在这个新闻发布系统的基础上,结合您本身的需要,把它设计得更为完美。
至此,我们的这套个人网站自动新闻发布系统基本上制作完毕了
Java Asp PHP .Net XML C/C++ CGI VB Jsp J2ee J2se J2me EJB Servlet Tomcat Resin Struts Weblogic Eclipse ANT GUI JMS Web servise IDEA Webphere Hibernate Spring Jboss Applet Swing Socket Javamail Perl Ajax P2P 安全 模式 框架 测试 开源 游戏
Windows XP Windows 2000 Windows 2003 Windows Me Windows 9.x Linux UNIX 注册表 操作系统 服务器 应用服务器