台灣最大程式設計社群網站
線上人數
1379
 
會員總數:246494
討論主題:190002
歡迎您免費加入會員
討論區列表 >> ASP >> [ASP]搜尋引擎的問題
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
[ASP]搜尋引擎的問題
價值 : 0 QP  點閱數:1340 回應數:1
樓主

jane
初學者
98 27
88 28
發送站內信

因為我要做一個搜尋引擎 而我在index下有加了這一段語法,但尋找出來的東西是我vbscript的內
我的網站目前還沒架上網 所以我放在我的http:127.0.0.1/seven裡,我該如何去尋找到我html裡的關鍵字呢?
程式如下

    <HTML>
    <HEAD>
    <% If Request("SearchText") <> "" Then
     response.write "<TITLE>ASP搜尋引擎:查詢關鍵字"& Request("SearchText")& "</TITLE>"
     Else
     response.write "<TITLE>ASP搜尋引擎</TITLE>"
    End If %>
    </HEAD>
    <BODY>
    <FORM method="post" action="Search.asp">
    <DIV align="center"></DIV>
    <DIV align="center">
    <TABLE bgcolor="#0033CC" border="0" bordercolorlight="#00FFFF" bordercolordark="#000000">
    <TR> 
    <TD> <font color="#FFFFFF">查詢內容:</font> <FONT color="#CCCCCC">    
    <INPUT type="text" name="SearchText" size="40">  
    </FONT> </TD>  
    <TD> <FONT color="#CCCCCC">   
    <INPUT type="submit" name="Submit2" value="搜尋">  
    </FONT></TD>  
    </TR>  
    <TR>   
    <TD height="32"> <FONT color="#CCCCCC"> 輸出內容:<Select name="rLength" size="1" > 
    <OPTION value="200" SELECTED>詳細內容 
    <OPTION value="100">簡短內容 
    <OPTION value="0">簡單內容</Select>
    <Select name="rResults">  
    <OPTION value="10" SELECTED>10   
    <OPTION value="25">25   
    <OPTION value="50">50   
    </Select>  
    </FONT> </TD>  
    <TD height="32"> <FONT color="#CCCCCC">   
    <INPUT type="reset" name="Reset" value="清除">  
    </FONT></TD>  
    </TR>  
    </TABLE>  
    </DIV>  
    </FORM>  
    <P><% If Request("SearchText") <> "" Then %> </P>  
    <P><B>查詢關鍵字 '<%=Request("SearchText")%>'</B><BR> 
    <% 
    Const fsoForReading = 1 
    Dim objFile, objFolder, objSubFolder, objTextStream  
    Dim bolCase, bolFileFound 
    Dim strDeTag, Ext, strFile, strContent, strRoot, strTag, strText, strTitle, strTitleL  
    Dim reqLength, reqNumber, count 
    strFile = ".asp .htm .html .js .txt .css" 
    strRoot = "/" 
    strText = Request("SearchText") 
    If Request("Case") = "on" Then bolCase = 0 Else bolCase = 1 
    If Request("rResults") = "10" Then reqNumber = 10 
    If Request("rResults") = "25" Then reqNumber = 25 
    If Request("rResults") = "50" Then reqNumber = 50 
    reqLength = Request("rLength") 
    Set objFSO = Server.CreateObject("Scripting.FileSystemObject") 
    Set objFolder = objFSO.GetFolder(Server.MapPath(strRoot)) 
    CurURL= "http://" & Request.serverVariables("SERVER_NAME")  
    CurPath = objFolder 
    schSubFol(objFolder) 
    For Each objSubFolder In objFolder.SubFolders 
     schSubFol(objSubFolder) 
    Next 
    If Not bolFileFound Then Response.Write "找不到你要查詢的資料.." 
    If bolFileFound Then Response.Write "<B>查詢結束</B>" 
    Set objTextStream = Nothing 
    Set objFolder = Nothing 
    Set objFSO = Nothing 
    Sub schSubFol(objFolder) 
     For Each objFile In objFolder.Files 
     If Count + 1 > reqNumber or strText = "" Then Exit Sub 
     If Response.IsClientConnected Then 
     strext = right(objFile.Name,3) 
     If instr(1,strFile,strext) > 0 Then 
     Set objTextStream = objFSO.OpenTextFile(objFile.Path,fsoForReading) 
     strContent = objTextStream.ReadAll 
     If InStr(1,strContent,strtext) > 0 Then 
     postitle = InStr(1, strContent, "<TITLE>",1) 
     If postitle > 0 Then 
     strTitle = Mid(strContent, postitle + 7, InStr(1, strContent, "</TITLE>", 1) - (postitle + 7))  
     Else 
     strTitle = "Sin Titulo" 
     End If 
     Count = Count + 1 
     Response.Write "<DL><DT><B><I>"& Count &"</I></B> - <A HREF="&Obt_Url(objFile.path) & ">" & strTitle & "</A></DT><BR><DD>" 
     strTitleL = InStr(1, strContent, "</TITLE>", 1) - InStr(1, strContent, "<TITLE>", 1) + 7 
     strDeTag = "" 
     bolTagFound = False 
     Do While InStr(strContent, "<") 
     bolTagFound = True 
     strDeTag = strDeTag & " " & Left(strContent, InStr(strContent, "<") - 1) 
     strContent = MID(strContent, InStr(strContent, ">") + 1) 
     Loop 
     strDeTag = strDeTag & strContent 
     If Not bolTagFound Then strDeTag = strContent 
     If reqLength = "0" Then 
     Response.Write obt_url(objFile.Path) & "</DD></DL>" 
     Else 
     Response.Write Mid(strDeTag, strTitleL, reqLength) & "...<BR><I><FONT SIZE='2'>URL: " & obt_url(objFile.Path) & " - Ultima modificacion: " & objFile.DateLastModified & " - " & FormatNumber(objFile.Size / 1024) & "Kbytes</FONT></I></DD></DL>" 
     End If 
     bolFileFound = True 
     End If 
     objTextStream.Close 
     End If 
     End If 
     Next 
    End Sub 
    Function Obt_Url (nompath) 
     obt_url = CurUrl +"/"+ right(nompath,len(nompath) - len(curpath)-1) 
    End Function 
    %>  
    <% End If %>  
    </P>  
    </BODY></HTML>  
  

搜尋相關Tags的文章: [ 搜尋 ] , [ 搜尋 ] , [ 引擎 ] ,
本篇文章發表於2002-04-27 21:05
1樓
回應

cuculon
檢舉此回應
唉!翻書吧!
很多ASP的書都有相關的範例.不管你是用資料管理的PAGE,
還是普通網頁要用FSO來讀取.都有~
本篇文章回覆於2002-04-27 22:02
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.