search.asp:

<%

set DM=server.CreateObject("DeepMap.HLL")

pnn=0: wdd="": pnn=Request("pn") : wdd=Trim(Request("wd"))

If pn < 1 OR pn > 50 Then

pn = 1

End If

response.write getPB(pnn, wdd)

Function getPB(pnn, wdd)

Dim vx(3000) : RS="" : RR="" : vn=0 : pn=int(pnn): wd=wdd

RS = DM.getmAA(wd, (pn - 1) * 10 + 9 + 50, 1)

vn = int(getT(RS, "TC")) : uz = Split(getT(RS, "TD"), "-")

For j = 0 To UBound(uz)

vx(j + 1) = uz(j)

Next

ss1 = "<html><head><meta http-equiv=Content-Type content='text/html;charset=gb2312'><style> BODY {FONT-SIZE: 100%; FONT-FAMILY: arial,sans-serif} A:link {COLOR: #0000cc; TEXT-DECORATION: underline} </style><title>全文搜索引擎" & urldecode(wd) & "</title></head>"

ss1 = ss1 & "<table cellpadding=0 cellspacing=0 border=0><tr><td align=left><a href=index.htm><img src=logo.gif width=148 height=65 border=0></a></td><td align=left><table border=0 cellpadding=0 cellspacing=0 align=left><tr><td colspan= 2 width=0><strong><font size=4px color=#C60A00>&nbsp;Powered By Karma</font></strong></td></tr>"

ss1 = ss1 & "<form name=f action=search.asp method='GET'><tr><td nowrap=nowrap valign=top>&nbsp;<input type=hidden name=pn value=1><input type=text name=wd id=kw size=40 maxlength=38 value='" & urldecode(wd) & "'></td><td style=padding-left:4px; valign=top><input type=submit value='搜索一下'></td></tr></form><tr><td></td></tr></table></td></tr></table>"

ss1 = ss1 & "<table width='100%' border='0' align='center' cellpadding='0' cellspacing='0' style='background-color:#E8F3FF;height:20px;margin-bottom:20px;font-size:12px'><tr><td nowrap>&nbsp;</td><td align='left' nowrap>&nbsp;&nbsp;<a style=COLOR:#0000cc href=index.htm>返回首页</a></td><td align='right' nowrap>" & getT(RS, "TB") & "&nbsp;&nbsp;&nbsp;&nbsp;</td></tr></table>"

if pn >(vn - 1) \ 10 + 1 Then

pn=(vn - 1) \ 10 + 1

end If

ss2 = ""

For i = pn * 10 - 9 To pn * 10

ss9 = ""

If i <= vn Then

RR = DM.getmFF( vx(i) & "_title_txt_url_time" )

Rtitle = DM.getmEE(getT(RR, "title"), wd, 0)

Rtxt = getT(RR, "txt")

if instr(1, Rtxt, "[[txt]]")>0 then

Rtxt=mid(Rtxt, instr(1, Rtxt, "[[txt]]")+7)

end if

Rtxt = DM.getmEE(Rtxt, wd, 1)

Rurl = getT(RR, "URL"): Rtime = getT(RR, "Time")

ss9 ="<table border=0 cellpadding=0 cellspacing=0 width=60% ><tr><td style=line-height:120%;font-size:100%;width:32em;padding-left:15px;word-break:break-all;word-wrap:break-word;>"

ss9 = ss9 & "<a href=" & Rurl & " target='_blank'>" & Rtitle & "<br></a>"

ss9 = ss9 & "<font size=-1>" & Rtxt & "<br>"

ss9 = ss9 & "<font color=#008000>" & Left(Rurl, 40) & "...[" & vx(i) & "] " & Rtime & "&nbsp&nbsp&nbsp&nbsp</font></font><br><br></td></tr></table>"

End If

ss2 = ss2 & ss9 & vbCrLf

Next

If vn > (pn - 1) * 10 + 50 Or vn > 500 Then

vin = 500

Else

vin = vn

End If

For j = -4 To 4

k = (pn - 1) * 10 + j * 10

If vin > k And k > -1 Then

If j = 0 Then

S = "<a style=TEXT-DECORATION:none;font-weight:bold;COLOR:#a90a00 href=search.asp?pn=" & pn + j & "&wd=" & server.urlencode(wd) & ">" & pn + j & "</a>" & "&nbsp;&nbsp;"

Else

S = "<a style=font-weight:bold;COLOR:#000 href=search.asp?pn=" & pn + j & "&wd=" & server.urlencode(wd) & ">" & pn + j & "</a>" & "&nbsp;&nbsp;"

End If

ds = ds + S

End If

Next

k = pn * 10 - 20

If vin > k And k > -1 Then

ds ="<a style=COLOR:#0000cc href=search.asp?pn=" & pn - 1 & "&wd=" & server.urlencode(wd) & ">上一页</a>" & "&nbsp;&nbsp;" & ds

End If

k = pn * 10

If vin > k And k > -1 Then

ds = ds & "<a style=COLOR:#0000cc href=search.asp?pn=" & pn + 1 & "&wd=" & server.urlencode(wd) & ">下一页</a>" & " "

End If

ss3 = "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;" & ds

ss3 = ss3 & "<br><br><br><div style='clear:both;line-height:30px;background:#E8F3FF;text-align:center;font-size:13px'><span>此内容系搜索引擎根据您的指令自动搜索的结果,不代表本网站赞成被搜索网站的内容或立场</span></div>"

If vn = 0 Then

ss2 = "未找到相关结果,建议将关键词用空格分开。"

End If

getPB = ss1 & ss2 & ss3

End Function

Function getT(ks, kk)

ks = LCase(ks): kk = LCase(kk)

ki = InStr(1, ks, kk & "={{{")

If ki > 0 Then

ki = InStr(ki, ks, "{") + 3: kj = InStr(ki, ks, "}}}"): getT = Mid(ks, ki, kj - ki): Exit Function

End If

ki = InStr(1, ks, kk & "={")

If ki > 0 Then

ki = InStr(ki, ks, "{") + 1: kj = InStr(ki, ks, "}"): getT = Mid(ks, ki, kj - ki)

End If

End Function

Function urldecode(encodestr)

newstr = "": havechar = False: lastchar = ""

For i = 1 To Len(encodestr)

char_c = Mid(encodestr, i, 1)

If char_c = "+" Then

newstr = newstr & " "

ElseIf char_c = "%" Then

next_1_c = Mid(encodestr, i + 1, 2): next_1_num = CInt("&H" & next_1_c)

If havechar Then

havechar = False: newstr = newstr & Chr(CInt("&H" & lastchar & next_1_c))

Else

If Abs(next_1_num) <= 127 Then

newstr = newstr & Chr(next_1_num)

Else

havechar = True: lastchar = next_1_c

End If

End If

i = i + 2

Else

newstr = newstr & char_c

End If

Next

urldecode = newstr

End Function

%>


index.asp:

<%

Response.Buffer = True

Response.Expires = -1

Response.ExpiresAbsolute = Now() - 1

Response.Expires = 0

Response.CacheControl = "no-cache"

%>

<html>

<head>

<STYLE>BODY {

FONT-SIZE: 9pt; FONT-FAMILY: 宋体

}

TD {

FONT-SIZE: 9pt; FONT-FAMILY: 宋体

}

DIV {

FONT-SIZE: 9pt; FONT-FAMILY: 宋体

}

INPUT {

FONT-SIZE: 9pt; FONT-FAMILY: 宋体

}

BUTTON {

FONT-SIZE: 9pt; FONT-FAMILY: 宋体

}

.use1 INPUT {

BORDER-RIGHT: #d0d0d0 1px solid; BORDER-TOP: #d0d0d0 1px solid; BACKGROUND: #ffffff; BORDER-LEFT: #d0d0d0 1px solid; COLOR: #000000; PADDING-TOP: 1px; BORDER-BOTTOM: #d0d0d0 1px solid

}

.use1 TEXTAREA {

BORDER-RIGHT: #d0d0d0 1px solid; BORDER-TOP: #d0d0d0 1px solid; BACKGROUND: #ffffff; BORDER-LEFT: #d0d0d0 1px solid; COLOR: #000000; PADDING-TOP: 1px; BORDER-BOTTOM: #d0d0d0 1px solid

}

TABLE {

BORDER-COLLAPSE: collapse

}

</STYLE>

<STYLE>A {

TEXT-DECORATION: none

}

</STYLE>

<title>搜索上传系统登陆</title>

<link href="css/css.css" rel="stylesheet" type="text/css"/>

<link rel="stylesheet" href="style.CSS">

<script language=javascript>

function CheckForm()

{

if(document.Login.UserName.value=="")

{

alert("用户不能为空!");

document.Login.UserName.focus();

return false;

}

if(document.Login.Password.value == "")

{

alert("密码不能为空!");

document.Login.Password.focus();

return false;

}

}

</script>

</head>

<body topmargin="100" bgcolor="#D2E4FC">

<table width="100%" border="0" cellspacing="0" cellpadding="0" align="center" height="100%">

<tr>

<td>

<table width="264" border="1" cellspacing="0" style="border-collapse: collapse" class="border" align="center" bgcolor="#D2E4FC" bordercolor="green">

<form method="post" action="chkadmin.asp" onSubmit="return CheckForm();" name="Login">

<tr>

<td valign="middle" width="258" height="21">

<p align="center">搜索上传系统登陆</td>

</tr>

<tr align="center">

<td align="center" height="140" width="258">

<table width="241" border="0" cellspacing="5" cellpadding="0" align="center">

<tr>

<td align="right" width="64">账号:</td>

<td width="162">

<input name="UserName" type="text" id="UserName2" size="21" maxlength="20" style="border-width:1px; border-color:rgb(0,104,255); border-style:solid;">

</td>

</tr>

<tr>

<td align="right" width="64">密码:</td>

<td width="162">

<input name="Password" type="password" size="21" maxlength="20" style="border-width:1px; border-color:rgb(0,104,255); border-style:solid;">

</td>

</tr>

<tr align="center">

<td colspan="2" width="231">

<input type="submit" name="Submit" value=" 确认 ">

&nbsp;

<input name="reset" type="reset" id="reset" value=" 清除 ">

</td>

</tr>

</table>

</td>

</tr>

</form>

</table>

<div align="center">&nbsp;</div>

<p align="center">&nbsp;</p>

<div align="right">  </div>

</td>

</tr>

</table>

</body>

</html>


chkadmin.asp:

<%

Response.Buffer = True

Response.ExpiresAbsolute = Now() - 1

Response.Expires = 0

Response.CacheControl = "no-cache"

Response.AddHeader "Pragma", "No-Cache"

Dim username,password

username=replace(trim(Request.Form("username")),"'","")

password=replace(trim(Request.Form("password")),"'","")

Set Conn=server.createobject("adodb.connection")

Set Rs=Server.CreateObject("adodb.recordset")

Conn.Open "Driver={SQL Server};Server=(Local);UID=sa;PWD=123;"&"database=db_search;"

Rs.Open "select * from tab_admin where username='"&username&"' and password='"&password&"'",Conn,3,3

If Not Rs.eof Then

'Rs("LastLoginIP")=Request.ServerVariables("REMOTE_ADDR")

'Rs("LastLoginTime")=now()

'Rs("LoginTimes")=rs("LoginTimes")+1

'Rs.update

'response.write ("<script>alert('成功登陆!')</script>")

session("username")=username

response.redirect "index.htm"

response.end

Else

response.write "<script>alert('账号或密码错误!');history.back();</script>"

response.end

End If

Rs.Close

Conn.Close

Set rs=Nothing

Set Conn = Nothing

%>


upinfo.asp:

<%

Response.Buffer = True

Response.Expires = 0

Response.CacheControl = "no-cache"

Response.AddHeader "Pragma", "No-Cache"

Set Conn=server.createobject("adodb.connection")

Set Rs=Server.CreateObject("adodb.recordset")

Conn.Open "Driver={SQL Server};Server=(Local);UID=sa;PWD=123;"&"database=db_search;"

Rs.Open "select * from tab_upload",Conn,3,3

%>

<html>

<head>

<link href="css/css.css" rel="stylesheet" type="text/css"/>

<title>文件信息上载</title>

<script type="text/javascript">

function enable()

{

var value = document.getElementById ('DocStyle');

if (value.value == "任务文件")

{

document.getElementById("TaskNumber").disabled=false;

}

else

{

document.getElementById("TaskNumber").disabled=true;

}

}

function check()

{

var value = document.getElementById('fn');

var key = document.getElementById('file');

var txt = document.getElementById('txt');

if(value.value == "")

{

alert("文件名不可以为空!");

return false;

}

if(key.value == "")

{

alert("请上传文件!");

return false;

}

if(txt.value == "")

{

alert("请填写文件摘要信息!");

return false;

}

}

function postvalue()

{

var key = document.getElementById ('selectarea');

var value = document.getElementById ('DocAuthor');

value.value = key.value;

}

function def()

{

var key = document.getElementById ('selectarea');

var value = document.getElementById ('DocAuthor');

//value.value = key.options[key.selectedIndex].text;

value.value = key.options[key.selectedIndex].value;

}

</script>

</head>

<body background="images/bg.jpg" onload='def();'>

<form action="SaveInfo.asp" method="POST">

文件名称:

<input type="text" name="fn" id="fn" style='width:200px'/>

<br />

文件类型:

<select name="DocStyle" id="DocStyle" style='width:200px' onchange="enable();">

<%

rs.movefirst

Do while not rs.eof

response.Write("<option value=""" & rs("DocStyle") & """>" & rs("DocStyle") & "</option>")

rs.movenext

Loop

%>

</select>

<br />

任务代号:

<select name="TaskNumber" id="TaskNumber" disabled="true" style='width:200px'>

<%

rs.movefirst

Do while not rs.eof

response.Write("<option value=""" & rs("TaskNumber") & """>" & rs("TaskNumber") & "</option>")

rs.movenext

Loop

%>

</select>

<br />

文件年份:

<select name="DocTime" style='width:200px'>

<%

rs.movefirst

Do while not rs.eof

response.Write("<option value=""" & rs("DocTime") & """>" & rs("DocTime") & "</option>")

rs.movenext

Loop

%>

</select>

<br />

所属工号:

<select name="JobNumber" style='width:200px'>

<%

rs.movefirst

Do while not rs.eof

response.Write("<option value=""" & rs("JobNumber") & """>" & rs("JobNumber") & "</option>")

rs.movenext

Loop

%>

</select>

<br />

编制单位:

<select name="DocComp" style='width:200px'>

<%

rs.movefirst

Do while not rs.eof

response.Write("<option value=""" & rs("DocComp") & """>" & rs("DocComp") & "</option>")

rs.movenext

Loop

%>

</select>

<br />

所属专业:

<select name="DocMajor" style='width:200px'>

<%

rs.movefirst

Do while not rs.eof

response.Write("<option value=""" & rs("DocMajor") & """>" & rs("DocMajor") & "</option>")

rs.movenext

Loop

%>

</select>

<br />

文件作者:

<select name="selectarea" id="selectarea" style='width:200px' onchange="postvalue();">

<%

rs.movefirst

Do while not rs.eof

response.Write("<option value=""" & rs("DocAuthor") & """>" & rs("DocAuthor") & "</option>")

rs.movenext

Loop

%>

</select>

<input type='text' name="DocAuthor" id="DocAuthor" style='width:183px;position:absolute;left:87px;'>

<br />

文件权限:

<select name="DocAuthity" style='width:200px'>

<%

rs.movefirst

Do while not rs.eof

response.Write("<option value=""" & rs("DocAuthity") & """>" & rs("DocAuthity") & "</option>")

rs.movenext

Loop

%>

</select>

<br />

文件摘要:

<br />

输入文件信息摘要(80字)

<br />

<textarea name='DocSummary' rows='10' cols='80' id="txt" onpropertychange='if(value.length>80) value=value.substr(0,80)'>

</textarea>

<br /><br />

文件上传:

<input type="file" name="file" id="file" size="42" style='width:200px'>

<br /><br />

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

&nbsp;&nbsp;&nbsp;

<input type="submit" value="提交" onclick="return check();"/>

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

<input type='reset' name='res' value='清除' />

</form>

</body>

</html>


saveinfo.asp:

<%

Response.Buffer = True

Response.Expires = 0

Response.CacheControl = "no-cache"

Response.AddHeader "Pragma", "No-Cache"

Dim DocStyle,DocTime,DocComp,DocMajor,DocAuthor,DocSummary,DocAuthity,JobNumber

Dim file,filename,houzui

fn = Request.Form("fn")

DocStyle = Request.Form("DocStyle")

DocTime = Request.Form("DocTime")

DocComp = Request.Form("DocComp")

DocMajor = Request.Form("DocMajor")

DocAuthor = Request.Form("DocAuthor")

DocSummary = Request.Form("DocSummary")

DocAuthity = Request.Form("DocAuthity")

JobNumber = Request.Form("JobNumber")

file = Request.Form("file")

'把文件信息写入数据库

Set conn = Server.CreateObject("ADODB.Connection")

conn.open "Driver={SQL Server};Server=(Local);UID=sa;PWD=123;"&"database=db_search;"

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

rs.open "select * from tab_file_info",conn,3,3

if file="" then

response.write"<script>alert('请选择要上传的文件!');window.location.href='upinfo.asp';</script>"

else

houzui=mid(file,InStrRev(file, "."))

if houzui=".pdf" or houzui=".doc" or houzui=".docx" or houzui=".bmp" or houzui=".jpg" or houzui=".tif" or houzui=".tiff" then '允许上传的文件类型

fn = fn & houzui

Set objStream = Server.CreateObject("ADODB.Stream")

objStream.Type = 1

objStream.Open

objStream.LoadFromFile file

objStream.SaveToFile "D:\xss\" & fn,2

objStream.Close

'========================================

response.write"<script>alert('文件上传成功!');</script>"

else

response.write"<script>alert('不允许上传" & houzui & "格式文件!');window.location.href='upinfo.asp';</script>"

end if

end if

rs.addnew

rs("DocName") =fn

rs("DocStyle") =DocStyle

rs("DocTime") =DocTime

rs("DocComp") =DocComp

rs("DocMajor") =DocMajor

rs("DocAuthor") =DocAuthor

rs("DocSummary")=DocSummary

rs("DocAuthity")=DocAuthity

rs("JobNumber") =JobNumber

rs("DocPath") = "D:\xss\" & fn

rs.update

rs.Close

set rs=nothing

conn.Close

set conn=Nothing

%>

<html>

<head>

<link href="css/css.css" rel="stylesheet" type="text/css"/>

<title>保存文件页面</title>

</head>

<body>

<a href='upinfo.asp'>继续上传</a>

<BR /><BR />

<a href='index.htm'>全文搜索</a>

</body>

</html>


css:

*{

margin:0px auto;

padding:5px;

}

body{

background:#fff url("../images/bg.jpg") 0 0 repeat-x;

min-width:960px;

font-family: Arial;

font-size:14px;

}


image:

全文检索引擎[asp版]_全文检索引擎[asp版]