• λ我爱Aspx >> Asp.Net >> 在ASP应用程序中加入智能搜索
  • 在ASP应用程序中加入智能搜索

  • :aspxer  Դ:internet  :2007-5-15 20:47:28  ؼ:asp
  • 用ASP实现搜索引擎的功能是一件很方便的事,可是,如何实现类似3721的智能搜索呢?比如,当在搜索条件框内输入“中国人民”时,自动从中提取“中国”、“人民”等关键字并在数据库内进行搜索。看完本文后,你就可以发现,这个功能实现起来竟然是如此的简单。

    第一步,我们要建立一个名为db_sample.mdb的数据库(本文以Access2000数据库为例),并在其中建立表T_Sample。表T_Sample包括如下字段:

    ID 自动编号

    U_Name 文本

    U_Info 备注

    第二步,我们开始设计搜索页面Search.asp。该页面包括一个表单(Frm_Search),表单内包括一个文本框和一个提交按钮。并将表单的method属性设为“get” ,action属性设为“Search.asp",即提交给网页自身。代码如下:

    <!-- Search.asp -->

    <form name="frm_Search" method="get" action="Search.asp">

    请输入关键字:

    <input type="text" name="key" size="10">

    <input type="submit" value="搜索">

    </form>

    下面,就进入了实现智能搜索的关键部分。

    首先,建立数据库连接。在Search.asp的开始处加入如下代码:

    <%

    Dim strProvider,CNN

    strProvider="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="

    strProvider=strProvider & Server.MapPath("\") & "\data\db_Sample.mdb" 假设数据库存放在主页根目录下的data目录下

    Set CNN = Server.CreateObject("ADODB.connection")

    CNN.Open strProvider 打开数据库连接

    %>

    接下来,判断 ASP页所接收到的数据,并在数据库中进行搜索。

    <%

    Dim S_Key,RST,StrSQL

    S_Key = Trim(Request("key")) 得到搜索关键字的值

    If S_Key <>"" then

    Set RST=Server.CreateObject("ADODB.RecordSet")

    StrSQL=AutoKey(S_Key) 此处使用自定义函数 AutoKey(),该函数为实现智能搜索的核心

    RST.Open StrSQL,CNN,3,2 得到搜索后的记录

    If RST.BOF And RST.EOF Then

    %>

    <font color="#FF0000">未找到任何结果!!!</font>

    Ҷƪл˵?
  • һƪ如何利用ASP实现邮箱访问
    һƪ在ASP应用程序中限制重复提交同一表单