编写php分页代码 mysql_fetch_arry()就是无法执行
<?php
/*
* Created on 2013-7-30
*
* To change the template for this generated file go to
* Window - Preferences - PHPeclipse - PHP - Code Templates
*/
$page = $_get;
if(!function_exists(pageft)){
function pageft($totle,$displaypg=20,$url=''){
//定义几个全局变量:
//$page:当前页码;
//$firstcount:(数据库教程)查询的起始项;
//$pagenav:页面导航条代码,函数内部并没有将它输出;
//$_server:读取本页url"$_server["request_uri"]"所必须。
global $page,$firstcount,$pagenav,$_server;
$globals["displaypg"]=$displaypg;
if(!$page) $page=1;
//如果$url使用默认,即空值,则赋值为本页url:
if(!$url){ $url=$_server["request_uri"];}
//url分析:
$parse_url=parse_url($url);
$url_query=$parse_url["query"]; //单独取出url的查询字串
if($url_query){
$url_query=preg_replace("/(^|&)page=$page/","",$url_query);
//将处理后的url的查询字串替换原来的url的查询字串:
$url=str_replace($parse_url["query"],$url_query,$url);
//在url后加page查询信息,但待赋值:
if($url_query) $url.="&page"; else $url.="page";
}else {
$url.="?page";
}
//页码计算:
$lastpg=ceil($totle/$displaypg); //最后页,也是总页数
$page=min($lastpg,$page);
$prepg=$page-1; //上一页
$nextpg=($page==$lastpg ? 0 : $page+1); //下一页
$firstcount=($page-1)*$displaypg;
//开始分页导航条代码:
$pagenav="显示第 <b>".($totle?($firstcount+1):0)."</b>-<b>".min($firstcount+$displaypg,$totle)."</b> 条记录,共 $totle 条记录";
//如果只有一页则跳出函数:
if($lastpg<=1) return false;
$pagenav.=" <a href='$url=1'>首页</a> ";
if($prepg)
$pagenav.=" <a href='$url=$prepg'>前页</a> ";
else $pagenav.=" 前页 ";
if($nextpg)
$pagenav.=" <a href='$url=$nextpg'>后页</a> ";
else $pagenav.=" 后页 ";
$pagenav.=" <a href='$url=$lastpg'>尾页</a> ";
//下拉跳转列表,循环列出所有页码:
$pagenav.=" 到第 <select name='topage' size='1' onchange='window.location="$url="+this.value'>\n";
for($i=1;$i<=$lastpg;$i++){
if($i==$page)
$pagenav.="<option value='$i' selected>$i</option>\n";
else
$pagenav.="<option value='$i'>$i</option>\n";
}
$pagenav.="</select> 页,共 $lastpg 页";
}
}
include("conn.php");
$result=mysql_query("SELECT * FROM `test`");
$total=mysql_num_rows($result);
//调用pageft(),每页显示10条信息(使用默认的20时,可以省略此参数),使用本页URL(默认,所以省略掉)。
pageft($total,3);
echo $pagenav;
$result="SELECT * FROM `test` limit $firstcount,$displaypg";
echo $result;
$query=mysql_query($result);
while($row=mysql_fetch_array($query)){
echo "<hr><b>".$row[name]." | ".$row[sex];
}
?>
PHP 分页 MySQL
[解决办法]
可能是sql出了问题,建议你贴出报错信息以供分析。
echo mysql_error(); 能看到什么
[解决办法]
用的着这么复杂。。。用get获取链接后面的参数替换 $firstcount 就行了
[解决办法]
输出SQL语句。然后复制的PHPMYADMIN里面去,如果有错误,会直接报出来。。
[解决办法]
这个错误说明你没有查到东西
如果查到就不会跟你说:你给的参数不是一个资源而是一个布尔值
[解决办法]
检查SQL语句
[解决办法]
select * from `test` limit 0,这里有问题,分页长度值没有加载进来
$displaypg=20应该设为全局变量,在你的function 定义之前就声明。