求一个简单方便的分页类    麻烦说一下怎么用  
特别是关于php的代码   如要传几个值进去  类似的简单讲一下

解决方案 »

  1.   

    你传递一个page的参数值过去,然后计算分页就行了。
    我有,如果需要请QQ联系54963779
      

  2.   

    Conn.php<?php
    header("Content-Type:text/html;charset=utf-8");/*
     * Created on 2010-10-14
     *
     * To change the template for this generated file go to
     * Window - Preferences - PHPeclipse - PHP - Code Templates
     */
     $conn    = "";
     $mysql_localhost = "localhost";
     $mysql_user    = "root";
     $mysql_pws       = "sa";
     $mysql_data   = "bbs";/**
    * 连接数据库
    */  function OpenDatabase()
      {
      global $mysql_localhost,$mysql_user,$mysql_pws,$mysql_data; //设置全局变量,但退出函数后值无效
      $conn = @mysql_connect($mysql_localhost,$mysql_user,$mysql_pws) or die("提示:数据库连接失败!");
      $GLOBALS["conn"] = $conn;  //全局变量值,退出函数后值有效
    //  if(!$conn)
    //  {
    //   die('Could not connect: ' . mysql_error());
    //  }
      mysql_query("set names 'u'");  //设置编码
      $db_selected = mysql_select_db($mysql_data,$conn);
      }
      /**
       * 关闭数据库
       */
       function CloseDatabase()
       {
        mysql_close($GLOBALS["conn"]);
       }   /**
        * 查询数据库
        */// }
    ?> ListPage.php<?php
    header("Content-Type:text/html;charset=utf-8");/*
     * Created on 2010-10-16
     *
     * To change the template for this generated file go to
     * Window - Preferences - PHPeclipse - PHP - Code Templates
     */
    include("Conn.php");
    OpenDatabase(); //打开数据库
    //-------调用分页函数-------
    $pagenav = _page_list("test",3);
    //------------------------
    echo $pagenav;  //打印出分页返回的字符串
    //------------------------显示列表-------------------
    $sql = "SELECT * from test limit $firstcount,$pagesize";
    $result = mysql_query($sql,$conn); //查询语句
    while($row = mysql_fetch_array($result,MYSQL_NUM))
    {
     echo "<hr>".$row[0]." | ".$row[2];
    }
    echo "<hr>";
    mysql_free_result($result); //释放内存空间
    //----------------------------------------------------
    echo $pagenav;  //打印出分页返回的字符串
    //================================================================================
    /**
     * 函数名:_page_list
     * 参数:$table       ---- 所要查询的表名
     *      $page_size  ---- 每页的记录数,默认一页显示20条
     * 作用:分布显示所有记录
     * 使用方法:$pagenav = _page_list("test");
     *          然后在要显示分页字符的地方打印出$pagenav
     */
    function _page_list($table,$page_size=20)
    {
     global $firstcount,$pagenav,$page,$conn,$pagesize;
     $page = $_GET[page];
     $url = _get_url(); $pagesize = $page_size;
     $result = mysql_query("select * from $table",$conn);
     $total = mysql_num_rows($result);  //总记录数
     mysql_free_result($result);  //释放内存空间
     $lastpg = ceil($total / $pagesize); //最后一页,即总页数 $page = min($lastpg,$page); //返回其中最小的数
     $prepg = ($page > 1)?$page-1:$page; //上一页
     $nextpg = ($page < $lastpg)?$page+1:$page; //下一页 $firstcount = ($page-1)*$pagesize; //每页第一条记录的指针,默认从0开始
     if($firstcount <= 0) $firstcount = 0; $pagenav = "共 ".$lastpg." 页 ";
     $pagenav .= "<a href='$url=1'>首页</a>";
     if($page <= 1)
     {
      $pagenav .= " 上页";
     }
     else
     {
      $pagenav .= " <a href='$url=$prepg'>上页</a>";
     } if($page >= $lastpg)
     {
      $pagenav .= " 下页";
     }
     else
     {
      $pagenav .= " <a href='$url=$nextpg'>下页</a>";
     }
     $pagenav .= " <a href='$url=$lastpg'>尾页</a>";
     $pagenav .= " 当前第 ".$page." 页";
     $pagenav .= "<br>";
     return $pagenav;
    }/**
     *函数名:_get_url
     *作用:返回页面完整的URL值,即从根目录起,不包含URL最后面的#fragment
     */
    function _get_url()
    {
     global $page;
     $url = $_SERVER["REQUEST_URI"];  //获取URL地址
     $url_path = parse_url($url,PHP_URL_PATH); //获取文件路径
     $url_query = parse_url($url,PHP_URL_QUERY); //获取URL中?号后面的信息,相当于查询字符串
     if($page) //点击分页后
     {
      $url_query = ereg_replace("page=$page", "page", $url_query); //用空格替换掉&page=页数 或 page=页数
     }
     else //默认打开页面时
     {
      $url_query = "page";
      $page = 1; //默认是第一页
     }
     $url = $url_path;
     if($url_query)
     {
      $url .= "?".$url_query;
     }
     return $url;
    }
    CloseDatabase(); //关闭数据库
    ?>test.sql-- phpMyAdmin SQL Dump
    -- version 2.11.2.1
    -- http://www.phpmyadmin.net
    --
    -- 主机: localhost
    -- 生成日期: 2008 年 08 月 17 日 22:17
    -- 服务器版本: 5.0.45
    -- PHP 版本: 5.2.5SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";--创建数据库bbs--create database bbs;use bbs;-- 表的结构 `test`-- CREATE TABLE `test` (  `id` int(11) NOT NULL auto_increment,  `name` varchar(50) character set gb2312 NOT NULL,  `sex` varchar(2) character set gb2312 NOT NULL,  PRIMARY KEY  (`id`)) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=11 ; ---- 导出表中的数据 `test`-- INSERT INTO `test` (`id`, `name`, `sex`) VALUES(1, 'a', 'm'),(2, 'b', 'w'),(3, 'c', 'm'),(4, 'd', 'w'),(5, 'e', 'm'),(6, 'f', 'm'),(7, 'g', 'm'),(8, 'h', 'w'),(9, 'i', 'm'),(10, 'j', 'm');
    照着上面步骤慢慢来!
    保证lz可以调试出来的!