求救,怎么才能排序和分页。

y023 2004-04-10 11:22:17
各位大哥,小弟碰到一个难题了哦,下面这段代码我不知道怎么才能让信息显示的时候按日期最新的排在最上面,和分页显示。
mina.asp文件如下。
<body bgcolor="#FFFFFF" topmargin="0" bgproperties="fixed" background="image/bj.gif">
<div align="center"> </div>

<div align="center">
<center>



<table border="0" width="100%" cellspacing="0">
<tr>
<td width="100%" height="0"> <%
n = 0
n=Request("syinfo")

select case n
case 0
lei="r" %> <%

case 1
lei="求购"
xx="在线二手楼市--求购"

case 2
lei="出售"
xx="在线二手楼市--出售"

case 3
lei="换房"
xx="在线二手楼市--换房"

case 4
lei="求租"
xx="在线住房出租--求租"

case 5
lei="出租"
xx="在线住房出租--出租"

case 6
lei="店铺求购"
xx="在线店铺转让--求购"

case 7
lei="店铺转让"
xx="在线店铺转让--转让"

case 13 lei="征婚"

xx="征婚"

case 14
lei="交友"
xx="交友"
case 8
lei="r" %> <!-- #include file="top1.htm" --> <%

case 9
lei="r" %> <!-- #include file="top1.htm" --> <%

case 10
lei="r" %> <!-- #include file="tt.htm" --> <%
case 11
lei="r" %> <!-- #include file="top1.htm" --> <%

case 12
lei="r" %> <!-- #include file="top1.htm" --> <%

case 20
lei="r" %> <!-- #include file="page1.htm" --> <%

case 21
lei="r" %> <!-- #include file="page2.htm" --> <%

end select
on error resume next

if lei<>"r" then

Const Head="欢迎使用天翔信息网房产系统!"

Set conn = Server.CreateObject("ADODB.Connection")
DbPath = SERVER.MapPath("data/syinfo.mdb")

conn.open "driver={Microsoft Access Driver (*.mdb)};dbq=" & DbPath

Set rs=conn.Execute( lei )
If rs.EOF Then
response.write " 尚无纪录 "
Else
%> <!-- #include file="TitleOut.asp" --> <%
TitleOutput rs

End If
else
end if



%> </td>
</tr>
</table>
</TD>
</TR>


titleout.asp文件如下!

<SCRIPT language="Javascript">
function openWindow(file, width, height)
{
dimension = "toolbar=no,location=no,directories=no,status=no,scrollbars=no,resizable=no,copyhistory=no,width=" + width + ",height=" + height;
window.open(file,'',dimension);
}

</SCRIPT>


<%
Sub TitleOutput( rs )
On Error Resume Next
%>
<table border="0" width="100%" cellspacing="1">
<tr>
<td width="200%" align="center">
<b><font color="#0000ff"><% response.write xx %></font></b>
 
</td>


</tr>
</table>



<div align="center">
<center>



<table border="0" width="610" cellspacing="1" cellpadding="0" height="44">
<tr>
<td width="51" align="center" height="22" bgcolor="#FFD9D9"><strong><font color="#800080"><span style="font-size: 9pt">编号</span></font></strong></td>
<td width="51" align="center" height="22" bgcolor="#FFD9D9"><strong><font color="#800080"><span style="font-size: 9pt">方位</span></font></strong></td>
<td width="107" align="center" height="22" bgcolor="#FFD9D9"><span style="FONT-SIZE: 9pt"><strong><font color="#800080">小区名、地段</font></strong></span></td>
<td width="35" align="center" height="22" bgcolor="#FFD9D9"><span style="FONT-SIZE: 9pt"><strong><font color="#800080">层次</font></strong></span></td>
<td width="55" align="center" height="22" bgcolor="#FFD9D9"><span style="FONT-SIZE: 9pt"><strong><font color="#800080">面积(㎡)</font></strong></span></td>
<td width="59" align="center" height="22" bgcolor="#FFD9D9"><span style="FONT-SIZE: 9pt"><strong><font color="#800080">套型</font></strong></span></td>
<td width="46" align="center" height="22" bgcolor="#FFD9D9"><span style="FONT-SIZE: 9pt"><font color="#800080"><strong>价格</strong></font></span></td>
<td width="51" align="center" height="22" bgcolor="#FFD9D9"><span style="FONT-SIZE: 9pt"><strong><font color="#800080">始建于</font></strong></span></td>
<td width="43" align="center" height="22" bgcolor="#FFD9D9"><strong><font color="#800080"><span style="font-size: 9pt">登记日</span></font></strong></td>
<td width="45" align="center" height="22" bgcolor="#FFD9D9"><strong><font color="#800080"><span style="font-size: 9pt">有效期</span></font></strong></td>
<td width="61" align="center" height="22" bgcolor="#FFD9D9"><strong><font color="#800080"><span style="font-size: 9pt">详细资料</span></font></strong></td>
</tr>
<%
rs.MoveFirst
While Not rs.EOF
id = rs("id")
%>


<tr>
<td width="51" align="center" height="18" bgcolor="#DAF5FE"><%=rs("id")%></td>
<td width="51" align="center" height="18" bgcolor="#DAF5FE"><%=rs("fw")%></td>
<td width="107" align="center" height="18" bgcolor="#DAF5FE"><%=rs("xq")%></td>
<td width="35" align="center" height="18" bgcolor="#DAF5FE"><%=rs("szc")%></td>
<td width="55" align="center" height="18" bgcolor="#DAF5FE"><%=rs("mj")%></td>
<td width="59" align="center" height="18" bgcolor="#DAF5FE"><%=rs("tx")%></td>
<td width="46" align="center" height="18" bgcolor="#DAF5FE"><%=rs("jg")%></td>
<td width="51" align="center" height="18" bgcolor="#DAF5FE"><%=rs("yea")%></td>
<td width="43" align="center" height="18" bgcolor="#DAF5FE"><%=rs("date")%></td>
<td width="45" align="center" height="18" bgcolor="#DAF5FE"><%=rs("long")%></td>
<td width="61" align="center" height="18" bgcolor="#DAF5FE"><span style="font-size: 9pt">

<a href="javascript:openWindow('display.asp?ID=<%=rs("id")%>',580,380)"><p align="center">详细资料</a>
</td>
</tr>

<%
rs.MoveNext
Wend

End Sub
%>


请各位告诉我,应该怎么修改哦!

...全文
37 点赞 收藏 4
写回复
4 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
bozy 2004-07-08

我写的一段分页的函数,直接调用就可以了。

http://www.thinksee.com/detail.asp?Nid=44
回复
dullwolf 2004-07-08
这个价值超过200分,比你那个要好哦!!
2万行数据巨快,分页演示,通用表维护
http://www.adr.gov.cn/download/panyuguang/adrnew/dict_List.asp
下载
http://www.adr.gov.cn/download/panyuguang/adrnew.rar

回复
andy77 2004-04-11
首先说一点你的程序的问题。
【1】
=======
case 1
lei="求购"
xx="在线二手楼市--求购"
case 2
......
==============
这段代码不太好,因为如果此时增加一些lei和xx的内容,你岂不是要修改程序?
所以最好是最数据库字典表,格式如下:
1 求购
2 出售
... ...
你的“方位”“编号”,“小区名”也有类似的情况,这些东西要用asp代码从数据库中读出来,动态循环生成代码,而不是手写,否则不能体现asp的作用了。
希望有所领悟。

【2】关于排序,排序可以通过查询SQL预计来实现。
先写一条基本SQL语句 strSQL=select * from tablename
如果用户选择了某个自动作为排序自动,然后你处理一下你的SQL语句,例如:
strSQL=strSQL + " order addtime desc"

【3】分页的情况我给你一段比较通用的代码,希望好好研究。

page=request("page")
if page="" then
page=1
else
page=cint(request("page"))
end if
rsResult.pagesize =20
rsResult.Open strSQLResult,cn,1,1

if page<=rsResult.PageCount then
CurPage=page
else
CurPage=rsResult.PageCount
end if

if rsResult.AbsolutePage >=0 then
rsResult.AbsolutePage =CurPage
end if


Response.Write curpage & ":" & rsResult.PageCount & ":" & page

length=5
PageList=""

if CurPage>length and CurPage<=rsResult.PageCount -length then '前后都显示不下,显示[前一页]和[下一页]
PageList="<a href=manager.asp?page=" & cstr(CurPage-1) & wWhere & " class=a03>[前一页]</a>"
for i=CurPage-length+1 to CurPage+length-1
if i=CurPage then
PageList=PageList & "<font color=red>[" & cstr(i) & "]</font>"
else
PageList=PageList & "<a href=manager.asp?page=" & cstr(i) & wWhere & " class=a03>[" & cstr(i) & "]</a>"
end if
next
PageList=PageList & "<a href=manager.asp?page=" & cstr(CurPage+1) & wWhere & " class=a03>[下一页]</a>"
elseif curpage<=length and CurPage>rsResult.PageCount -length then'前后都能显示,直接全部显示。
for i=1 to rsResult.PageCount
if i=CurPage then
PageList=PageList & "<font color=red>[" & cstr(i) & "]</font>"
else
pageList=PageList & "<a href=manager.asp?" & "page=" & cstr(i) & wWhere & " class=a03>[" & cstr(i) & "]</a>"
end if
next
elseif curpage<=length and CurPage<=rsResult.PageCount -length then '前面全部显示,后面加上[下一页]
for i=1 to CurPage+length-1
if i=CurPage then
PageList=PageList & "<font color=red>[" & cstr(i) & "]</font>"
else
PageList=PageList & "<a href=manager.asp?page=" & cstr(i) & wWhere & " class=a03>[" & cstr(i) & "]</a>"
end if
next
PageList=PageList & "<a href=manager.asp?page=" & cstr(CurPage+1) & wWhere & " class=a03>[下一页]</a>"
elseif curpage>length and CurPage>rsResult.PageCount -length then '后面全部显示,前面加上[前一页]
PageList="<a href=manager.asp?page=" & cstr(CurPage-1) & wWhere & " class=a03>[前一页]</a>"
for i=CurPage-length+1 to rsResult.PageCount
if i=CurPage then
PageList=PageList & "<font color=red>[" & cstr(i) & "]</font>"
else
PageList=PageList & "<a href=manager.asp?page=" & cstr(i) & wWhere & " class=a03>[" & cstr(i) & "]</a>"
end if
next
end if

这段代码不可能直接执行的,但你可以稍微改一下。他最后生成一个字符串pagelist,他就是显示的页面情况,放在你所需要显示分页的地方。当然你还可以加上一个“【】定位”的功能,就是说可以直接跳转到任何一个页。

希望的回答能给你一点帮助。好运
回复
xhuad 2004-04-10
哪有这样写代码的啊?
case 1
lei="select * from 求购"
case 2
lei="select * from 出售"
.
.
.
lei=lei&"order by addtime desc"
set rs=server.createobject("adodb.recordset")
rs.open lei,conn,1,1
rs.pagesize=4
num=rs.recordcount
maxpage=rs.pagecount
rs.absolutepage=page
有以上的东东就可以自己搞分页了!
回复
发动态
发帖子
ASP
创建于2007-09-28

2.8w+

社区成员

ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
申请成为版主
社区公告
暂无公告