繁体中文
设为首页
加入收藏
当前位置:ASP技术首页 >> 全文检索 >> Windows 2000 Server 下 Indexing Service 编程实例。

Windows 2000 Server 下 Indexing Service 编程实例。

2004-10-01 08:26:10  作者:  来源:互联网  浏览次数:43  文字大小:【】【】【
简介:<%@ Language=VBScript %> <%     Response.Expires = 0     Response.Buffer = false %> <HTML> <HEAD> <META NAME="GENERATOR"...

<%@ Language=VBScript %>

<%

Response.Expires = 0

Response.Buffer = false

%>

Indexing Service

<%

work=request("work")

if work<>"search" then

%>

Search for:


(C) 2001 Chen Wei - Windows 2000 Server Indexing Service Demo v1.0

<%else

Response.Write ""

dim keyword

dim stype

dim pagesize

oldkeyword = Request("keyword")

keyword = replace(oldkeyword,"'","''")

function clen(str)

For i = 1 To Len(str)

zh = Mid(str, i, 1)

zhasc = Asc(zh)

If zhasc < 0 Then

clen=false

exit function

End If

Next

if len(str)<3 then clen=true else clen=false

end function

if clen(keyword) then

Response.Write "没有任何结果 - 关键字必须 > 3(英文) or > 1(中文)。"

Response.End

end if

stype = cstr(Request("stype"))

pagesize = Request("pagesize")

dim page

page = clng(request("page"))

if page<1 then page=1

if keyword <> "" then

dim con, rs

set con = server.CreateObject("adodb.connection")

set rs = server.CreateObject("adodb.recordset")

dim strSearchSQL

select case stype

case "1"

strSearchSQL = "select DocTitle, vPath, FileName, Characterization, Size, Rank from scope() where contains('" & keyword & "') order by Rank Desc"

case "2"

strSearchSQL = "select DocTitle, vPath, FileName, Characterization, Size, Rank from scope() where freetext('" & keyword & "') order by Rank Desc"

case "4"

strSearchSQL = "select DocTitle, vPath, FileName, Characterization, Size, Rank from scope() where contains('formsof(INFLECTIONAL,""" & keyword & """)') order by Rank Desc"

end select

'Response.Write stype & strSearchSQL

con.Open "Provider=MSIDXS; Data Source=Web"

rs.Open strSearchSQL, con, 3

if pagesize="all" then pagesize = rs.RecordCount

pagesize=clng(pagesize)

rs.PageSize = pagesize

if page> rs.PageCount then page=rs.PageCount

if not rs.BOF then rs.AbsolutePage = page

ahref = "default.asp?work=search&keyword=" & keyword & "&stype=" & stype & "&pagesize=" & pagesize

Response.Write "

Results of search for " & server.HTMLEncode(oldkeyword) & "

Total records: " & rs.RecordCount

call pageinfo

for i=1 to rs.PageSize

if rs.EOF then exit for

%>

<%=i+pagesize * (page-1)%>. <%

if len(rs("DocTitle")) then

Response.Write server.HTMLEncode(rs("DocTitle"))

else

Response.Write server.HTMLEncode(left(rs("FileName"),instrrev(rs("FileName"),".")-1))

end if

%>

<%=rs("Rank")%>‰
<%=server.HTMLEncode(rs("Characterization"))%>
<%=rs("FileName")%> (<%=rs("Size")%> bytes)

<%

rs.MoveNext

next

Response.Write "


"

call pageinfo

end if

sub pageinfo

Response.Write "

"

if page>1 then

Response.Write "" & server.HTMLEncode("|<") & ""

Response.Write " "

Response.Write "" & server.HTMLEncode("<<") & ""

else

Response.Write server.HTMLEncode("|<")

Response.Write " "

Response.Write server.HTMLEncode("<<")

end if

Response.Write " "

if page

Response.Write "" & server.HTMLEncode(">>") & ""

Response.Write " "

Response.Write "" & server.HTMLEncode(">|") & ""

else

Response.Write server.HTMLEncode(">>")

Response.Write " "

Response.Write server.HTMLEncode(">|")

end if

Response.Write " - " & pagesize & " Records/Page"

Response.Write " - " & page & "/" & rs.PageCount & " Pages"

Response.Write "
"

for i=1 to rs.PageCount

if i=page then

Response.Write "[" & i & "]"

else

Response.Write "[" & i & "]"

end if

next

Response.Write "

"

end sub

end if

%>

责任编辑:admin
相关文章