>  기사  >  백엔드 개발  >  php文章列表分页代码怎么写?

php文章列表分页代码怎么写?

WBOY
WBOY원래의
2016-06-23 14:05:201200검색

$sql = "SELECT * FROM `links` WHERE `subdomain` != '' ORDER BY id desc LIMIT 100";$rows = $db->getData($sql);foreach($rows as $row){	echo '<li><a href="http://'.$row['subdomain'].'.abc.com/" title="'.$row['title'].'">'.$row['title'].'</a></li>';}

第一页的文章调用我会写,但是要分页不知道怎么写
现在有字段  title  subdomain 


回复讨论(解决方案)

直接找个分页函数应用就可以了。
大约参数如下:
1 总数
2 当前页
3 每页数量
4 baseUrl,你所说的title及subdomain都以GET方式传送。
5 显示页面数量

class CCustomWidgets {  public static function Pager($totalPages, $pageNumber, $pageSize, $url, $displayNumber = 6) {    $baseUrl = (strpos($url, "?") === false) ? $url.'?page=' : $url.'&page=';    $pager = '<div class="pager"><ul>';    $prevPage = $pageNumber - 1;    if($prevPage > 0){      $pager .= '<li><a href="'.$baseUrl. $prevPage.'"><span class="pager-previous">&auml;&cedil;?&auml;&cedil;?&eacute;&iexcl;&micro;</span></a></li>';    }    if($totalPages - $pageNumber < $displayNumber) {      $displayStart = ($totalPages >= $displayNumber) ? ($totalPages - $displayNumber + 1) : 1;      $displayEnd = $totalPages;    }else{      if($pageNumber % $displayNumber){        $displayStart = floor($pageNumber  / $displayNumber) * $displayNumber + 1;        $displayEnd = (floor($pageNumber  / $displayNumber) + 1) * $displayNumber;      }else{        $displayStart = (floor(($pageNumber / $displayNumber) - 1)) * $displayNumber + 1;        $displayEnd = (floor($pageNumber / $displayNumber)) * $displayNumber;      }    }    for(; $displayStart <= $displayEnd; $displayStart++) {      $pager .= '<li><a href="'.$baseUrl.$displayStart.'"><span '.(($pageNumber == $displayStart) ? 'class="active"' : '').'>'.$displayStart.'</span></a></li>';    }    if($pageNumber < $totalPages){      $pager .= '<li><a href="'.$baseUrl. ($pageNumber + 1) .'"><span class="pager-next">&auml;&cedil;?&auml;&cedil;?&eacute;&iexcl;&micro;</span></a></li>';    }    $pager .= "</ul></div>";    return $pager;  }}

如果你的分页要在数据库上做的话 这两个字段不够啊,你只有标题和文章的一部分。 你至少还要标识出这个domain是文章的第几段/页 还有就是标识文章的id 标题是能够重复的

就是分页逻辑复杂点

主要使用sql的limi语句来分页,传两参,一个起始页,一个每页显示数目。
前台时,如果不用无刷,可以用地址get数值到页面,然后根据get的值改变内容。
做无刷,就把页码$.post到Action,再在action里处理。
然后回调函数替换div内容。

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.