php与mysql完成的分页类(自家用)

这个分页是上次发的java分页的基础,我是在php的基础上,完成的其他的分页,思想基本一样,把此函数改造后,才能适应真正的使用,样式的控制在do-while这个函数上
class page
{
var $user="root";
var $passwd="";
var $host="127.0.0.1";
var $port="3306";
var $dbname="soohuo";
//var $server=$this->host.":".$this->port;
var $page_num=30;//每页显示的条数
var $con;//库连接成功句柄
var $result;//查询成功句柄
var $page_sum;//总共的页数
function page($sql,$url)
{
$this->db_connect();
$this->get_page_sum($sql);
if(!isset($_GET["page"])||$_GET["page"]==0)
$page=1;
else
$page=$_GET["page"];
$url=$url."?page=";
$foot="
";
if($page>1)
$foot=$foot." 上一页  ";
$foot=$foot."当前是第$page 页";
if($this->page_sum>1&&$page<$this->page_sum)
$foot=$foot."   下一页";
if($this->page_sum>1)
{
$foot=$foot." 跳到第
  • /n"; for($i=1;$i<=$this->page_sum;$i++) { if($i==$page) $foot.="
  • /n"; else $foot.="
  • /n"; } $foot.=" 页";
    }
    $foot.="
  • ";
    $start=($page-1)*$this->page_num;
    $end=$this->page_num;
    $sql1=$sql." limit $start,$end";
    $this->db_query($sql1);
    $this->get_page_head($sql);//page head
    $this->db_while();//page body
    echo $foot;//page end
    }
    function db_while()
    {
    $result=$this->result;
    echo "ID号标题错误原因";
    while($row=mysql_fetch_array($result))
    {
    if($row["up_oracle"]==2)
    {
    $error="存在重复";
    }
    if($row["up_oracle"]==3)
    {
    $error="插入没成功";
    }
    echo "".$row["data_id"]." ".$row
    ["title"]."
    ".$error."";
    }
    mysql_free_result($result);
    }
    function get_page_sum($sql)
    {
    $row_num=mysql_num_rows(mysql_query($sql));
    $page_sum=ceil($row_num/$this->page_num);
    $this->page_sum=$page_sum;
    }
    function get_page_head($sql)
    {
    $row_num=mysql_num_rows(mysql_query($sql));
    if($row_num==0)
    {
    $head="
    没有您要查找的记录
    "; echo "
    $head
    ";
    exit();
    }
    $page_sum=ceil($row_num/$this->page_num);
    $head="
    共有记录 $row_num 条 共 $page_sum 页
    ";
    echo "







































    $head
    "; $this->page_sum=$page_sum; } function db_connect() { $server=$this->host.":".$this->port; $con=mysql_connect($server,$this->user,$this->passwd); if(!$con) { echo "database is connect error!".mysql_error().""; exit(); } $select=mysql_select_db($this->dbname); if(!$select) { echo "select is not database error!".mysql_error().""; exit(); } $this->con=$con; } function db_query($sql) { if($sql=="") { echo "query is not null"; exit(); } $result=mysql_query($sql,$this->con); if(!$result) { echo "/$sql error"; echo "/$sql is $sql"; exit(); } $this->result=$result; } } ?>
    • 0
      点赞
    • 0
      收藏
      觉得还不错? 一键收藏
    • 0
      评论

    “相关推荐”对你有帮助么?

    • 非常没帮助
    • 没帮助
    • 一般
    • 有帮助
    • 非常有帮助
    提交
    评论
    添加红包

    请填写红包祝福语或标题

    红包个数最小为10个

    红包金额最低5元

    当前余额3.43前往充值 >
    需支付:10.00
    成就一亿技术人!
    领取后你会自动成为博主和红包主的粉丝 规则
    hope_wisdom
    发出的红包
    实付
    使用余额支付
    点击重新获取
    扫码支付
    钱包余额 0

    抵扣说明:

    1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
    2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

    余额充值