萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> 編程語言綜合 >> 如何做一個只搜索本網站的引擎?

如何做一個只搜索本網站的引擎?

 searchfiles.html 

<html>

<head>

<title>撼雪噴雲之本網搜索引擎</title>

</head>

<body>

<form method="POST" action="cgi-bin/searchfiles.asp">

  <table border="0" cellpadding="5" bgcolor="#C2E7E3">

    <tr>

      <td align="center">請輸入條目或關鍵詞<input type="text" name="term" size="15"> <input  type="submit" value="搜索"></td>

    </tr>

  </table>

</form>

</body></html>

 

searchfiles.asp
<%
SearchTerm = request.form("term")
Novalid=" a b c d e f g h i j k l m n o p q r s t u v w x y z yes no and more"
NovalidResponse ="你輸入的內容過於簡單,請返回重試!"

if instr(SearchTerm,Novalid)=0 then
Response. Write ("<CENTER><H2>搜索結果</H2></CENTER>")

  FolderName= "FolderName"
  ShowList()

else
Response.Write NovalidResponse
End if

SearchResponse=""
%>

<%
Sub ShowList()
FolderToCheck = server.mappath("") &"/" & FolderName & "/"
Dim fs, f, f1, fc, s
    Set fs = CreateObject("Scripting.FileSystemObject")
    Set f = fs.GetFolder(FolderToCheck)
Set fc = f.Files
For Each f1 in fc

        Wfile = f1.name
          if right(Wfile, 5)=".html" OR right(Wfile, 4)=".htm" then
            Wfile2 = FolderToCheck & Wfile
            Set fs = CreateObject("Scripting.FileSystemObject")
            Set a = fs.OpenTextFile(Wfile2)
            ct = a.ReadAll
            a.close
            ct2=lcase(ct)
            SearchTerm2 = lcase(SearchTerm)

                  if instr(ct2,SearchTerm2)>0 then

                      if instr(ct,"</title>")>0 then
                  longitud=instr(ct,"</title>")
                  longitud=longitud -1
                          ct=left(ct,longitud)
                          longitud2=len(ct)
                  longitud=instr(ct,"<title>")
                  longitud=longitud2 -longitud -6
                          ct=right(ct,longitud)
                    else
                        if instr(ct,"</title>")>0 then
                    longitud=instr(ct,"</title>")
                    longitud=longitud -1
                            ct=left(ct,longitud)
                            longitud2=len(ct)
                    longitud=instr(ct,"<title>")
                    longitud=longitud2 -longitud -6
                            ct=right(ct,longitud)
            end if
                    end if

                    SearchResponse= SearchResponse +"<tr><td>"+ ct + "</td><td ALIGN=CENTER
VALIGN=MIDDLE>" + " <A HREF=" + "/" + FolderName + "/" + Wfile +"> More </A></td></tr>"
          longitud=0
                  ct=""

                  end if
          end if

Next

Response.Write ("<html><head><title>搜索結果</title></head><body BGCOLOR=FFFFFF><CENTER>") 

Response.Write ("<TABLE BORDER=0 WIDTH=550><tr><td BGCOLOR=C0C0C0><FONT SIZE=5><B>搜索結果</B></FONT></td></tr></TABLE>") 

Response.Write ("<TABLE BORDER=0 WIDTH=550>") 
if SearchResponse<>"" then 
Response.Write SearchResponse
else
Response.Write ("<tr><td>對不起,沒有找到你輸入的條目或關鍵詞!</td></tr>")
end if
Response.Write ("</TABLE>")

Response.Write ("<TABLE BORDER=0 WIDTH=550><tr><td BGCOLOR=C0C0C0 ALIGN=RIGHT><FONT SIZE=1>現在調用專業搜索引擎<A HREF= http://www.yahoo.com.cn/ </A></FONT></td></tr></TABLE>")

' 任選一個你喜歡的引擎.

Response.Write ("</CENTER></body></html>")

End Sub
%>

        :更多精彩教程請關注三聯網頁設計教程 欄目,

copyright © 萬盛學電腦網 all rights reserved