我用asp做的搜索程序,在本网站搜关键字第一页显示正常,点第2页就不行了,请求援助?

来源:百度知道 编辑:UC知道 时间:2024/06/05 05:48:08
http://www.b-oo-k.cn/research.asp 这是网站的地址.
<%
End Sub

Function showpage(totalnumber,maxperpage,filename)
Dim n

If totalnumber Mod maxperpage=0 Then
n= totalnumber \ maxperpage
Else
n= totalnumber \ maxperpage+1
End If

Response.Write "<form method=Post action="&filename&"?searchkey="&searchkey&"&action="&action&"&anclassid="&anclassid&"&jiage="&jiage&">"
Response.Write "<p align='center' class='contents'> "
If CurrentPage<2 Then
Response.Write "<font class='contents'>首页 上一页</font> "
Else
Response.Write "<a href="&filename&"?page=1&searchkey="&searchke

比较复杂,可以支持多种逻辑符,包括 + - and or 空格等,并且根据需要随便增加。可以根据条件选择在那个表中搜索,对速度也做了优化,可以说是很快的。当然因为是以前写的,存在不少毛病。存储过程中用到几乎所有sql server的特性,如光标(记录集分页)等。好了,不吹了,自己看程序吧。

asp 函数
function AnalyseKeyword(a_strSource)
dim m_strDest , m_intLoop
dim m_intBeginPos , m_intEndPos
dim m_strHead , m_strMiddle , m_strTail
m_strDest = a_strSource

@#------------------------------处理空格------------------------------------------------------

@#首先去掉头尾空格
m_strDest = ltrim(rtrim(m_strDest))

@#将& , " and " 等替换成 +、 -、空格
m_strDest = replace(m_strDest , "&" , "+")
m_strDest = replace(m_strDest , " AND " , "+")
m_strDest = replace(m_strDest , " OR " , chr(32))
m_strDest = replace(m_strDest , " NOT " , "-")

@#初始化变量,以使下面的循环进行
m_intBeginPos = 1

do while m_intBeginPos <> 0
m_intBeginPos = instr(m_strDest ,chr(3