新客网WWW.XKER.COM:致力做中国最专业的网络学院!
学院: 操作系统 - 网络应用 - 服务器 - 网络安全 - 工具软件 - 办公软件 - Web开发 - 数据库 - 网页设计 - 图形图像 - 媒体动画 - 硬件学堂 - 存储频道 - QQ专区
您的位置:首页 > 软件开发 > Web开发 > Asp教程 > 正文:5个实用网站速成(BIG5)(四)

5个实用网站速成(BIG5)(四)

新客网 XKER.COM 2003-07-11 来源: 收藏本文
網站如何加入中文全文檢索功能呢?

如何於您的網站加入中文全文檢索功能呢?

於Windows NT Option Pack當中,包括Index Server,提供中文全文檢索的搜尋功能,可以搜尋網站中Microsoft Word 或Microsoft Excel檔案、text、html、asp等檔案格式內的資料。

本單元教您如何搜尋特定目錄下的資料。

若要執行中文全文檢索的範例,首先安裝Windows NT Option Pack的Microsoft Index Server,然後於Index Server Manager建立一個名為ntop的Catalog。

方法為執行Index Server Manager,於 [Index Server on Local Machine] 按右鍵,選擇 [New] 的 [Catalog]。

接著將Catalog命名為ntop,選擇範例安裝的路徑,建立待搜查的目錄,於所新建立的ntop Catalog,按右鍵,選擇 [New] 的 [Directory],輸入待搜查的目錄,最後要啟動Index Server,於 [Index Server on Local Machine] 按右鍵,選擇 [Start]。

於用戶端使用瀏覽器執行,輸入搜尋字串index。

所找到的標題為本範例的<TITLE>您找到Index Server了</TITLE>。

如何於asp程式加入中文全文檢索功能呢?首先set Q = Server.CreateObject("ixsso.Query")以呼叫中文全文檢索的元件,然後設定:


Q.Query = 搜尋字串


Q.SortBy = 排列順序


Q.Columns = 搜尋的欄位


Q.Catalog = 搜尋的Catalog


Q.MaxRecords = 最多搜尋筆數

最後下一行Q.CreateRecordSet("nonsequential")後即開始搜尋,搜尋的結果放在RS的Recordset中,如下:


RS.RecordCount:搜尋相符的筆數。


RS("rank"):搜尋相符率,最大為1000。


RS("DocTitle"):標題。


RS("vpath"):URL位址。


RS("characterization"):摘要。


RS("size"):檔案大小。


RS("filename"):檔案名稱。


RS("write"):檔案寫入日期時間。

完整的asp程式如下:

<HTML><HEAD>

<TITLE>您找到Index Server了</TITLE>

</HEAD>

<BODY>

<%

if Request("Action") = "搜尋" then

set Q = Server.CreateObject("ixsso.Query")

Q.Query = Request("SearchString")

Q.SortBy = "rank[d]"

Q.Columns = "DocTitle, vpath, filename, size, write,

characterization, rank"

Q.MaxRecords = 50

Q.Catalog = "ntop"

set rs = Q.CreateRecordSet("nonsequential")

Response.Write "總計 " & rs.RecordCount & " 項<p>"

%>

<% Do While Not rs.EOF %>

<%if VarType(rs("DocTitle")) = 1 or rs("DocTitle") = "" then%>

<a href="<%=rs("vpath")%>"><%=

Server.HTMLEncode( rs("filename") )%></a> (<%= rs("rank") %>)

<%else%>

<a href="<%=rs("vpath")%>"><%= Server.HTMLEncode(rs("DocTitle"))%></a> (<%= rs("rank") %>)

<%end if%>

<BR>

<%if VarType(rs("characterization")) = 8 and rs("characterization") <> "" then%>

摘要:<%= Server.HTMLEncode(rs("characterization"))%><br>

<%end if%>

http://<%=Request("server_name")%><%=rs("vpath")%><br>

<%if not rs("size") = "" then%>

size <%=rs("size")%> bytes - <%=rs("write")%> GMT

<%end if%>

<P>

<%

rs.MoveNext

Loop

end if

%>

<hr>

<FORM ACTION="index1.asp" METHOD=GET>

搜尋字串:

<INPUT TYPE="TEXT" NAME="SearchString" SIZE="30" VALUE="<% = Request("SearchString") %>"></TD>

<INPUT TYPE="SUBMIT" NAME="Action" VALUE="搜尋">

</FORM>

<HR></BODY></HTML>
收藏】 【评论】 【推荐】 【投稿】 【打印】 【关闭
发表评论
要记得去论坛讨论,点击注册新会员匿名评论
评论内容:不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
阅读排行
随机推荐
实用信息推荐