欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

ASP文章系統(tǒng)解決方案實(shí)現(xiàn)上一頁(yè)下一頁(yè)第1/2頁(yè)

 更新時(shí)間:2007年01月03日 00:00:00   作者:  
首先感謝V37斑竹對(duì)我的幫助,這個(gè)方案解決了顯示“上一篇下一篇”和相關(guān)文章的問(wèn)題,貼出來(lái)讓大家分享。
以前看到一個(gè)帖子講用ID+1和ID-1的辦法判斷“上一篇下一篇”,在用的過(guò)程中發(fā)現(xiàn)一個(gè)問(wèn)題:當(dāng)刪除數(shù)據(jù)庫(kù)中的一篇文章時(shí),就會(huì)造成ID不連續(xù),如果用ID+1和ID-1來(lái)判斷就會(huì)出現(xiàn)找不到記錄的問(wèn)題,在這個(gè)程序里,通過(guò)查詢(xún)大于當(dāng)前ID的第一條記錄來(lái)找出下一篇的ID,查詢(xún)小于當(dāng)前ID的第一條記錄來(lái)找出上一篇的ID,這樣就算ID不連續(xù)也可以正常顯示了。
至于相關(guān)文章的顯示則是在數(shù)據(jù)表里添加一個(gè)boardid字段來(lái)區(qū)分不同的文章欄目,在每次添加一篇新文章時(shí)加上boardid號(hào)就可以了,顯示一篇文章時(shí)根據(jù)boardid來(lái)查詢(xún)數(shù)據(jù)庫(kù)就能顯示出相關(guān)文章。
數(shù)據(jù)表articles中的字段有id,boardid,title,content,author,addtime
復(fù)制代碼 代碼如下:

<!--程序開(kāi)始-->
'定義一個(gè)thenext函數(shù)來(lái)找出下一篇的ID,如果當(dāng)前記錄已經(jīng)是最后一條記錄,則輸出文字“沒(méi)有了”
<% 
function thenext
newrs=server.CreateObject("adodb.recordset")
sql="select top 1 * from articles where id>"&a1&" order by id"
set newrs=conn.execute(sql)
if newrs.eof then
response.Write("沒(méi)有了")
else
a2=newrs("id")
response.Write("<a href='view.asp?id="&a2&"'>下一篇</a>")
end if
end function
%>
'定義一個(gè)thehead函數(shù)來(lái)找出下一篇的ID,如果當(dāng)前記錄已經(jīng)是最前面的一條記錄,則輸出文字“沒(méi)有了”
<% 
function thehead
headrs=server.CreateObject("adodb.recordset")
sql="select top 1 * from articles where id<"&a1&" order by id desc"
set headrs=conn.execute(sql)
if headrs.eof then
response.Write("沒(méi)有了")
else
a0=headrs("id")
response.Write("<a href='view.asp?id="&a0&"'>上一篇</a>")
end if
end function
%>
'數(shù)據(jù)庫(kù)連接文件
<!--#include file="conn.asp"-->
'取得傳遞過(guò)來(lái)的ID,顯示文章標(biāo)題作者和內(nèi)容
<% 
id=request("id") 
sql="select * from articles where id="&id
set rs=conn.execute(sql)
%>
<% boardid=rs("boardid") %>
<title>文章系統(tǒng)-<% =rs("title") %></title><body leftmargin="0" topmargin="0">
<!--#include file="top.asp" -->
<%
Do While Not rs.EOF
%> 
<table width="773" border="0" cellspacing="0" cellpadding="0" align="center">
  <tr> 
<td width="576" align="left">
<table width="557" border="0" cellspacing="5" cellpadding="4" align="left">
        <tr> 
          <td colspan="2" align="center"><span style="font-size:9pt color:#efefef"><%= rs("title") %><br>
            <div align="right"><span style="font-size:9pt color:#efefef">作者:<%= rs("author") %></span></div>
            </span></td>
        </tr>
        <tr> 
          <td colspan="2" ><span style="font-size:9pt color:#efefef"><!--將數(shù)據(jù)庫(kù)的資料取出,經(jīng)過(guò)編碼后輸出,保持輸入時(shí)的格式不變--><%= replace(server.HTMLEncode(rs("content")),chr(13),"<br>") %></span></td>
        </tr>
<% a1=rs("id") %>
        <tr> 
          <td width="269" align="right"><!--調(diào)用前面定義的顯示上一篇的函數(shù)--><% thehead %></td>
          <td width="257" align="right"><!--調(diào)用前面定義的顯示下一篇的函數(shù)--><%  thenext %></td>
        </tr>
        <% rs.MoveNext%>
        <%Loop%>
      </table></td>
    <td width="217"  valign="top" align="left">相關(guān)文章: 
'根據(jù)當(dāng)前文章的欄目號(hào),找出同一欄目的文章    
<% 
    sql="select * from articles where boardid="&boardid&"" 
    set rs=conn.execute(sql)
    %> 
    <%
    Do While Not rs.EOF
    %>
    <table width="207" border="0" cellspacing="2" cellpadding="2">
  <tr>
          <td height="20"><a href="view.asp?id=<%=rs("id")%>"><%= rs("title") %></a></td>
  </tr>
</table>
<% rs.MoveNext%>
<%Loop%> 
    </td>
  </tr>
</table>
<!--#include file="copyright.asp" -->
</body>
<!--程序結(jié)束-->


相關(guān)文章

最新評(píng)論