• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    ASP文章系统解决方案实现上一页下一页第1/2页
    首先感谢V37斑竹对我的帮助,这个方案解决了显示“上一篇下一篇”和相关文章的问题,贴出来让大家分享。
    以前看到一个帖子讲用ID+1和ID-1的办法判断“上一篇下一篇”,在用的过程中发现一个问题:当删除数据库中的一篇文章时,就会造成ID不连续,如果用ID+1和ID-1来判断就会出现找不到记录的问题,在这个程序里,通过查询大于当前ID的第一条记录来找出下一篇的ID,查询小于当前ID的第一条记录来找出上一篇的ID,这样就算ID不连续也可以正常显示了。
    至于相关文章的显示则是在数据表里添加一个boardid字段来区分不同的文章栏目,在每次添加一篇新文章时加上boardid号就可以了,显示一篇文章时根据boardid来查询数据库就能显示出相关文章。
    数据表articles中的字段有id,boardid,title,content,author,addtime
    复制代码 代码如下:

    !--程序开始-->
    '定义一个thenext函数来找出下一篇的ID,如果当前记录已经是最后一条记录,则输出文字“没有了”

    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("没有了")
    else
    a2=newrs("id")
    response.Write("a href='view.asp?id="a2"'>下一篇/a>")
    end if
    end function
    %>
    '定义一个thehead函数来找出下一篇的ID,如果当前记录已经是最前面的一条记录,则输出文字“没有了”

    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("没有了")
    else
    a0=headrs("id")
    response.Write("a href='view.asp?id="a0"'>上一篇/a>")
    end if
    end function
    %>
    '数据库连接文件
    !--#include file="conn.asp"-->
    '取得传递过来的ID,显示文章标题作者和内容

    id=request("id") 
    sql="select * from articles where id="id
    set rs=conn.execute(sql)
    %>
    % boardid=rs("boardid") %>
    title>文章系统-% =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">!--将数据库的资料取出,经过编码后输出,保持输入时的格式不变-->%= replace(server.HTMLEncode(rs("content")),chr(13),"br>") %>/span>/td>
            /tr>
    % a1=rs("id") %>
            tr> 
              td width="269" align="right">!--调用前面定义的显示上一篇的函数-->% thehead %>/td>
              td width="257" align="right">!--调用前面定义的显示下一篇的函数-->%  thenext %>/td>
            /tr>
            % rs.MoveNext%>
            %Loop%>
          /table>/td>
        td width="217"  valign="top" align="left">相关文章: 
    '根据当前文章的栏目号,找出同一栏目的文章    

        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>
    !--程序结束-->


    12下一页阅读全文
    上一篇:[asp]怎么添加验证码的解决方法
    下一篇:ASP编程入门进阶(一):安装配置服务器
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    ASP文章系统解决方案实现上一页下一页第1/2页 ASP,文章,系统,解决方案,