michaellee23

做这个网页一是为了自己练习一下,希望不要被黑,各位手下留情。二就是为了展示一下我的设计作品,大家见笑了。还放了一些网页技术等相关的文章,在这里和大家分享。
如果要联系我,可以给我发邮件:
mickl123#sohu.com
将“#”替换为“@”。
网页设计制作可以找我。:)

asp实现上一篇下一篇效果的简单方法

说到上一篇下一篇的效果,由于有一次一个网友给我发邮件问我具体怎么写,后来我又重新思考了一下如何做这个效果,后来发现我开始写的方法好象还是有些问题,这里我得重新写一下,希望看过以前我写的方法的人可以稍微花点时间重新看一下,如果谁有更好的方法,希望有时间给我发个邮件告诉我,大家共同进步。

上一篇下一篇的效果,首先要说一下排序方法,我个人认为用时间排序比较好弄,因为时间是按“年,月,日,时,分,秒”分的,相当于一个字段又重新分成了多个小字段,这样在3条以上信息进行排序的时候会比较方便,比如下面这张表(sorttime为专门用来排序的字段,不是用来显示在页面上的告诉浏览者添加信息的时间)。

id title(信息标题) sorttime(排序用字段)
3 标题三 2009-09-20 10:40:55
1 标题一 2009-09-20 10:40:54
4 标题四 2009-09-19 10:40:54
2 标题二 2009-09-18 19:32:28

这个表格就是按时间来排序的,用的order by sorttime desc,一般信息排序都是倒序,当然正序倒序大家自己看着办。

注意“ sorttime”字段是排序用的,不是显示给浏览者看的。排序方法有了,就该上一篇下一篇的效果了。

通常在信息详情页面都有个信息的id字段作为参数,这样就能取出当前信息的详情,可以多取一个sorttime字段,用来做上一篇和下一篇的效果用。

上一篇的sql语句:"select top 1 id from TableName where sorttime < " & "----------当前信息sorttime字段----------" & "order by sorttime desc,id desc;"

这条sql语句选的是按倒序排好后取一条第一条信息。就是离现在当前信息sorttime时间最近的而且比当前信息旧的信息,例如上表里,信息详情页显示的是“标题一”,那么上一篇就是“标题四”。按倒序排好后比“标题一”更早的信息是“标题四”和“标题二”,而“标题四”离“标题一”最近,所以“标题一”上一篇信息是“标题四”。

下一篇的sql语句:"select top 1 id from TableName where sorttime > " & "----------当前信息sorttime字段----------" & "order by sorttime asc,id asc;"

用“order by sorttime asc,id asc”是因为,取离当前信息最近的信息,是比当前信息要新的所有信息里最早的信息(用“top 1”)。

我们这里说的“新旧”或“早晚”的比较,都是按sorttime字段排序的比较,因为是时间类型字段,所以我说的是“更早的”、“更晚的”、“更新的”、“更旧的”,没有用“大于”或“小于”形容。

注意:这个时间排序字段最好不要有重复的。防止这个的方法我是加了个“id asc”或“id desc”。当然如果文章表里放了所有分类的文章,在查询时候要把当前信息的分类也一起带上。

希望大家看的懂我写的,如果看不明白可以给我发邮件,本人文学水平有限,写的不好,见谅。

有人问这些语句如何加到asp页面里,我想了想应该怎么说,没想到有什么言简意赅的说法,只能是从asp语法学起了。

 

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''给大家一个时间格式的asp代码
<%
timeformat=year(Now()) & "-" & right("0"&month(Now()),2) & "-" & right("0"&day(Now()),2) & " " & right("0"&hour(Now()),2)& ":" & right("0"&minute(Now()),2)& ":" & right("0"&second(Now()),2)
%>
<%=timeformat%>

© 2009-2014 michaellee23.com. All rights reserved.

京ICP备13009010号