我是php新手,刚刚写的分页程序,不过水平高低,都请给看看,在这里先谢谢了!
刚刚学php没几天,书商和网上的分页都很麻烦,也很长,也许是我没耐下心好好看。
不过我没见过用select * from goods ORDER BY id DESC limit $index,$page_num这种方法的,
我想这样岂不是很简单了,不知道这样是不是效率低?
我刚学,什么都不懂,就自己写了一个。
那位高手请介绍一下通用的,比较权威,效率比较高的分页方法。
一下是我写的一个,我已测试通过,能正常运行
<?PHP
require 'config.php';
//page代表当前页数
if (!isset($HTTP_GET_VARS['page'])) $page=1;//如果是首次调用,没有$HTTP_GET_VARS['page'],就先设为1
else $page=$HTTP_GET_VARS['page'];//如不是首次调用,从点击的链接中获得页数
$page_num=20;//每页显示数量
$index=($page-1)*$page_num;//查询数据库时从多少号开始
//以下两句获得总记录数$total[0]
$total_result=mysql_query("select count(*) from goods");
$total=mysql_fetch_array($total_result);
$result=mysql_query("select * from goods ORDER BY id DESC limit $index,$page_num");//开始查询:倒序查询,从最新数据往下排列;从$index号开始显示,一共显示$page_num个记录
//取得并显示记录
while ($row=mysql_fetch_array($result))
{
echo "$row[id] $row[name] $row[num] $row[price] $row[text] $row[color] $row[img] $row[kucun] $row[flag]<br>";
}
//判断并显示上一页,下一页超链接,并传递参数
if ($page<round($total[0]/$page_num))
{
$i=$page+1;
echo "<a href=index.php?page=$i>下一页</a>";
}
if ($page>1)
{
$i=$page-1;
echo "<a href=index.php?page=$i>上一页</a>";
}
?>