我找了个仿Google的php分页程序,但是不知道如何连接数据库?好像要用到一个limit是吧?请大虾给出一个实例,谢谢!

解决方案 »

  1.   

    select * from 数据表 order by id(自己的字段) desc limit 开始的数据列 每页几条数据 
      

  2.   

    我试过了,还是不行呀?
    程序1:fenye.php
    <?
    function fenye ($p,$total) //当前页数,总页数

    global $site; 
    $prevs = $p - 10; if ( $prevs <= 0) { $prevs = 1; } 
    $prev = $prevs - 1; if ( $prev <= 0) {$prev = 1;} 
    $nexts = $p + 9; if ( $nexts > $total) { $nexts = $total; } 
    $next = $nexts + 1; if ( $next > $total) {$next = $total;} $pagenavi = "<a href=\"$site/?page=1\">首页</a> "; 
    $pagenavi.= "<a href=\"$site/?page=$prev\">上页</a> "; 
    for ( $i = $prevs; $i <= $p-1; $i++ ) { 
    $pagenavi.= "<a href=\"$site/?page=$i\">$i</a> "; 

    $pagenavi.= "<strong>$p</strong> "; 
    for ( $i = $p+1; $i <= $nexts; $i++ ) { 
    $pagenavi.= "<a href=\"$site/?page=$i\">$i</a> "; 

    $pagenavi.= "<a href=\"$site/?page=$next\">下页</a> "; 
    $pagenavi.= "<a href=\"$site/?page=$total\">尾页</a> "; return $pagenavi; 
    }
    ?>程序2:测试ttt.php<?php 
    //计数
    include("include/config.php");
    $perpage=10;
    $sql = "SELECT count(*) FROM `vote`;"; 
    $numrs = mysql_query($sql) or die(mysql_error()); 
    $numrow = mysql_fetch_row($numrs); 
    $num = $numrow[0]; //总记录 
    $total = ceil($num/$perpage); //总页数 
    //当前页码 
    if(!isset($_GET['page']) || preg_match('~[^0-9]+~',($_GET['page'])) || $_GET['page'] <= 0 || $_GET['page'] > $total) $page = 1; 
    else $page = $_GET['page']; 
    $startnum = ($page-1) * $perpage; //记录集开始数 include("include/fenye.php");$sql="select * from vote limit $startnum,$perpage";
    $query=mysql_query($sql);
    $rows=mysql_num_rows($query);
    for($i=0;$i<$rows;$i++)
    {
        $result=mysql_fetch_array($query);
    echo $result[vote_title];
    echo "<br>";
    }
    echo fenye($startnum,$total);
    ?>结果还是不对?