php查询分页及数据总数 php查询页面

thinkphp 怎么统计所有分页的内容.看TP手册配置,有详细介绍
直接改TP的分页类 ThinkPHP/Library/Think/Page.class.php
比如分页源code :
// 分页显示定制
private $config= array(
'header' = 'span class="rows"共 %TOTAL_ROW% 条记录/span',
'prev'= '',
'next'= '',
'first'= '1...',
'last'= '...%TOTAL_PAGE%',
'theme'= '%FIRST% %UP_PAGE% %LINK_PAGE% %DOWN_PAGE% %END%',
);
$config 的header的值: 'header' = 'span class="rows"共 %TOTAL_ROW% 条记录 共%TOTAL_PAGE%页/span',
$config 的THEME的值为:
'theme' = '%HEADER% %FIRST% %UP_PAGE% %LINK_PAGE% %DOWN_PAGE% %END%',
根据自己的情况调整显示的位置,改一次 所有的分页都ok,如果改配置每一处分页都要加麻烦 。
PHP递归无限分类的 如何统计总条数 以及对显示的结果进行分页?比如设置为每页显示10个。每个节点都要记录子节点的数量c 。每新增一个节点都要对各父和祖节点的子节点计数加1 。这样根节点会有总数的记录 。
这样递归遍历时也可以根据子节点数量c的来确定读取的数量限制 。比如 读取条数计数10 就继续递归
在每个节点的表上 增加子节点的id集或计数,增加根节点到父节点路径,会方便这些操作 。
PHP查询mysql的时候用了like和LIMIT分页,如何获得未分页但是like了的总数据量第一、phpmyadmin 的查询结果显示了分页数据、总条数信息及索引信息,看似只执行了一次查询,实际上是做了多次查询的,只是页面中没显示出来,但是查看 mysql的运行日志就会发现 , 其实已经执行了很多条 sql 语句 , 因为 phpmyadmin 的操作基本都是批量执行增删改查的;
第二、有一种方式可以实现只查询一次就能达到分页的效果,但实际上这种方式是不推荐的,性能比查询两次(一次查总数,一次查分页数据)低了很多,尤其在数据量越大的时候差异越明显;
一次查询的思路是:一次性把满足条件的数据全都查出来 , 然后再从结果中去取实际分页中要显示的那部分数据;例如,根据标题搜索数据,每页显示20条 , 一次性总共查出来 1000 条数据,显示第一页的时候就只获取前面的20条,第二页就取第21-40条 , 第三页就只取41-60条 , 后面的依次类推 。
可想而知,这种查询是很浪费的,我明明只要那一部分数据,却查出了所有的 , 剩下那部分就根本没用 。尤其在数据量大的时候,上万条百万条等等,性能就更差了,如果再加上高并发,那基本就要崩溃了 。
所以做分页一般都是查两次比查一次好得多
dreamware中,用php对查询结果分页显示我这个好用一点 , 可以直接加在最前面,有两个变量从页面GET的来 。
可如下引用:
echo yemiandaohang("thispage.php?",$num,$perpage,$page);
参数说明:
1、连接文档及其他的在网页中需用到的GET变量
2、查询结果的总数 , 仁兄的网页中若使用,此值可为:$num
3、每页显示个数,此处设置默认为10个,并可以从网页GET变量来改变
4、当前页编号 。
///////////////////////////////////////////设置分页显示///////////////////////////////////////////////////
//设置每页显示个数
if($_REQUEST[perpage]){
$perpage=$_REQUEST[perpage];
}
else{
$perpage=20;
}
//设置当前页
if($_REQUEST[page]){
$page=$_REQUEST[page];
}
else{
$page=1;
}
function yemiandaohang($web_,$count_,$per_page_=10,$page_no_=1){
$page_count_=ceil($count_/$per_page_);//计算页数
if($page_no_==1){//设置前导连接

推荐阅读