Home >php教程 >php手册 >通过调用数据库得到的上一页下一页的id

通过调用数据库得到的上一页下一页的id

WBOY
WBOYOriginal
2016-06-07 11:37:521440browse

这个功能在文章页面中实现‘上一页’,‘下一页’导航链接时需要用到,但是文章的id一般是不连贯的,所以不能通过当前页id加一减一实现,而是查询数据库上下两行的记录的id来实现,现在写成函数如下
<?php <br />     function article_guide($current_id,$table_name){//$current_id一般通过get得到<br>         $A = M($table_name);//A = article<br>         $result    = $A->order('id ASC')->select();<br>         $guide['min_id']    = $link[0]['id'];                    //数据库中最小的id<br>         $guide['max_id']    = $link[count($result)-1]['id'];    //数据库中最大的id<br>         //得到上一篇文章的ID<br>         $prev_id = $current_id-1;<br>         while(($A->where('id="'.$prev_id.'"')->getField('id')) == false){<br>             if($prev_id                  $prev_id = '-1';//表示已经是最早的文章<br>                 break ;<br>             }<br>             $prev_id--;<br>         }<br>         //得到下一篇文章的id<br>         $next_id = $current_id+1;<br>         while(($A->where('id="'.$next_id.'"')->getField('id')) == false){<br>             if($next_id >= $max_id) {<br>                 $next_id = '-2';//表示已经是最新的文章<br>                 break;<br>              }<br>             $next_id++;<br>         }<br>         $guide['next_id'] = $next_id;<br>         $guide['prev_id'] = $prev_id;<br>         return $guide;<br>     }在你需要使用的操作中调用此函数,然后给模板赋值,给相应的上一页下一页链接添加相应的id即可。
还可以通过id判断页面是否可以访问:I('get.id') == -1 ? $this->error('没有更早的文章了!','index') : false;<br> I('get.id') == -2 ? $this->error('没有更新的文章了!','index') : false;

AD:真正免费,域名+虚机+企业邮箱=0元

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn