用ASP實現搜索引擎的功能是一件很方便的事,可是,如何實現類似3721的智能搜
索呢?比如,當在搜索條件框內輸入“中國人民”時,自動從中提取“中國”、
“人民”等關鍵字並在數據庫內進行搜索。看完本文後,你就可以發現,這個功
能實現起來竟然是如此的簡單。 OK,FollowMe!
第一步,我們要建立一個名為db_sample.mdb的數據庫(本文以Access2000數
據庫為例),並在其中建立表T_Sample。表T_Sample包括如下字段:
ID自動編號
U_Name文本
U_Info備註
第二步,我們開始設計搜索頁面Search.asp。該頁麵包括一個表單
(Frm_Search),表單內包括一個文本框和一個提交按鈕。並將表單的method屬
性設為“get”,action屬性設為“Search.asp",即提交給網頁自身。代碼如下
:
<!--Search.asp-->
<formname="frm_Search"method="get"action="Search.asp">
請輸入關鍵字:
<inputtype="text"name="key"size="10">
<inputtype="submit"value="搜索">
</form>
下面,就進入了實現智能搜索的關鍵部分。
首先,建立數據庫連接。在Search.asp的開始處加入如下代碼:
<%
DimstrProvider,CNN
strProvider="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="
strProvider=strProvider&Server.MapPath("/")&
"/data/db_Sample.mdb"'假設數據庫存放在主頁根目錄下的data目錄下
SetCNN=Server.CreateObject("ADODB.connection")
CNN.OpenstrProvider'打開數據庫連接
%>
接下來,判斷ASP頁所接收到的數據,並在數據庫中進行搜索。
<%
DimS_Key,RST,StrSQL
S_Key=Trim(Request("key"))'得到搜索關鍵字的值
IfS_Key<>""then
SetRST=Server.CreateObject("ADODB.RecordSet")