phpfans留言版用到的数据操作类和分页类

代码如下:

class mysql{     
    function connect($dbhost, $dbuser, $dbpw, $dbname = '',$dbcharset='') {     
        if(!@mysql_connect($dbhost, $dbuser, $dbpw)) { 
            $this->show('Can not connect to MySQL server'); 
        }     
        if($dbname) { 
            $this->select_db($dbname); 
        } 
        if($this->version() > '4.1') { 
            if($dbcharset) {             
                 $this->query("SET NAMES '".$dbcharset."'");     
            } 
        } 
    }

function select_db($dbname) { 
        return mysql_select_db($dbname); 
    }

function fetch_array($query, $result_type = MYSQL_ASSOC) { 
        return @mysql_fetch_array($query, $result_type); 
    }

function query($sql, $type = '') { 
        if(!($query = mysql_query($sql))) $this->show('MySQL Query Error', $sql); 
        return $query;         
    }

function affected_rows() { 
        return mysql_affected_rows(); 
    }

function result($query, $row) { 
        return mysql_result($query, $row); 
    }

function num_rows($query) { 
        return @mysql_num_rows($query); 
    }

function num_fields($query) { 
        return mysql_num_fields($query); 
    }

function free_result($query) { 
        return mysql_free_result($query); 
    }

function insert_id() { 
        return mysql_insert_id();         
    }

function fetch_row($query) { 
        return mysql_fetch_row($query); 
    }

function version() { 
        return mysql_get_server_info(); 
    }

function close() { 
        return mysql_close(); 
    }

function show($message = '', $sql = '') { 
        if(!$sql) echo $message; 
        else echo $message.'<br>'.$sql; 
    } 
}

class page extends mysql{ 
    function pagination($sql,$maxnum,$page,$maxpages,$pagepre,$ext=''){ 
        global $sum,$stail,$link,$lmid,$ltail,$curpage;//$ext='&class=3' 
        $SELF = $_SERVER['PHP_SELF'];

$query = $this->query($sql); 
        $rows = $this->fetch_array($query,MYSQL_NUM); 
        $totalrows = $rows[0];

$totalpages = ceil($totalrows/$maxnum);     
        $startnum = ($page - 1)*$maxnum;     
        $string = $sum.$totalrows.$stail.$sum.$page."/".$totalpages.$stail;

if($page != 1){ 
            $string .= $link.$SELF."?page=1".$ext.$lmid."|‹".$ltail; 
            $string .=  $link.$SELF.'?page='.($page - 1).$ext.$lmid."‹‹".$ltail; 
        }

if($maxpages>=$totalpages){ 
            $pgstart = 1;$pgend = $totalpages; 
        } 
        elseif(($page-$pagepre-1+$maxpages)>$totalpages){ 
            $pgstart = $totalpages - $maxpages + 1; 
            $pgend = $totalpages; 
        } 
        else{ 
            $pgstart=(($page<=$pagepre)?1:($page-$pagepre)); 
            $pgend=(($pgstart==1)?$maxpages:($pgstart+$maxpages-1)); 
        }

for($pg=$pgstart;$pg<=$pgend;$pg++){  
            if($pg == $page){ 
                $string .=  $curpage.$SELF."?page=".$pg.$ext.$lmid.$pg.$ltail; 
            } 
            else $string .=  $link.$SELF."?page=".$pg.$ext.$lmid.$pg.$ltail; 
        }

if($page != $totalpages){ 
            $string .=  $link.$SELF.'?page='.($page + 1).$ext.$lmid."››".$ltail; 
            $string .=  $link.$SELF.'?page='.$totalpages.$ext.$lmid."›|".$ltail; 
        } 
    return $string; 
    } 
}

function html($str){ 
    $str = get_magic_quotes_gpc()?$str:addslashes($str); 
    return $str; 
}

function dehtml($str){ 
    $str = nl2br(stripslashes($str)); 
    return $str; 
}

function deip($str){ 
    $arr = explode('.',$str); 
    $str = $arr[0].'.'.$arr[1].'.'.$arr[2].'.*'; 
    return $str; 
}

(0)

相关推荐

  • PHP 分页类(模仿google)-面试题目解答

    笔试回答的不太好,特别是JS部分,也是许久都没复习的原因. 上机题目是要写一个仿google分页的类,当要取类似9/2的最大整数,却怎么也想不起函数ceil的名字,晕了半天. 最后测试程序没错误,但是就是不能正常显示,后来(回家后)一查才知道是语句:for($i=0;$i++;$i<9)写错了,于是下决心重新写一遍,于是就有了下面的代码了: 复制代码 代码如下: <?php /* 显示样式如下: [1] 2 3 4 5 6 7 8 9 10 ...100 下页 尾页 首页 上页 1..12 1

  • 仿Aspnetpager的一个PHP分页类代码 附源码下载

    基本逻辑思路和.net的一样,就是将通过实体类来进行配置换成了通过数组进行配置,逻辑比较简单,根据条件判断拼接分页html. 有以下几个简单的功能: 1:支持相关按钮的显示与否配置 2:支持每页数目,文本名称,html标签类名称的自由配置 3:支持url重写过的页面(需自己在配置数组中添加重写规则) 简单吧,还是直接上代码: 核心代码:pager.class.php 复制代码 代码如下: <?php class pager{ //分页的参数配置 private $config=array( //

  • php相当简单的分页类

    class Helper_Page{ /** 总信息数 */ var $infoCount; /** 总页数 */ var $pageCount; /** 每页显示条数 */ var $items; /** 当前页码 */ var $pageNo; /** 查询的起始位置 */ var $startPos; /** 下一页 */ var $nextPageNo; /** 上一页 */ var $prevPageNo; function Helper_Page($infoCount, $items

  • php+oracle 分页类

    example.php 复制代码 代码如下: <?php $conn = ociplogon("test","123456","test123"); include_once "pager.inc.php"; ?> 复制代码 代码如下: <?php /** 分页测试开始 */ // {{{ 初始分页对象 $pager = new pager(); /** 将 select id,name,age from t

  • php mysql数据库操作分页类

    复制代码 代码如下: <?php /*  *    mysql数据库 分页类  *    @package    pagelist  *    @author        yytcpt(无影)  *    @version    2008-03-27  *    @copyrigth    http://www.d5s.cn/   */ /*  *    分页样式     .page{float: left;font: 11px Arial, Helvetica, sans-serif; pa

  • php仿ZOL分页类代码

    复制代码 代码如下: <?php /** * 功能:分页类 * 作者:phpox * 时间:Sat Jul 14 18:15:02 CST 2007 */ defined('PHPOX') or die(header("HTTP/1.1 403 Not Forbidden")); class page{ public $infocount; public $pagecount; public $items; public $pageno; public $start; publi

  • PHP ajax 分页类代码

    <?php //本分页类不处理SQL; //大大的加快了分页功能 //http://blog.csdn.net/fkedwgwy //潇湘博客--潇湘 /** 演示 require_once('../libs/classes/page.class.php'); $page=new page(array('total'=>1000,'perpage'=>20)); echo 'mode:1<br>'.$page->show(); echo '<hr>mode:

  • php 分页类 扩展代码

    原来发表过一个脱离数据库的分页类,最近使用的时候发现有些时候搜索的东西过于大的时候,采用url传递参数的方式,可能会有一定的影响或者叫已知的bug,这次做了一些扩展,同时兼容了以前的模式,使用上面很简单的,只需要多设置一个参数就可以了代码如下: 复制代码 代码如下: <?php /** * 功能: 分页类,根据提供的数据总量和页面大小 * 创建日期:Fri Apr 20 16:45:21 CST 2007 * 最后更新: * 作者: sanshi <sanshi0815@tom.com>

  • 一个简单且很好用的php分页类

    复制代码 代码如下: class Page {    // 分页栏每页显示的页数    public $rollPage = 6;    // 页数跳转时要带的参数    public $parameter  ;    // 默认列表每页显示行数    public $listRows = 20;    // 起始行数    public $firstRow ;    // 分页总页面数    protected $totalPages  ;    // 总行数    protected $to

  • 精美漂亮的php分页类代码

    这是一款简单,方便,功能齐全的分页类,可以根据自己的需要更改CSS样式文件以实现分页颜色的控制,利用php分页类,可以省去自己很多时间,只需要在分页的地方嵌入即可,下面看下使用方法: 1,在head里包含pager.css 复制代码 代码如下: <link href="pager.css" type="text/css" rel="stylesheet" /> 2,在分页处进行类的实例化: 复制代码 代码如下: <?php   

  • 整合了前面的PHP数据库连接类~~做成一个分页类!

    不知道学PHP有没有前途~哎越写越没劲 <?php  Class createdb    //类的开始  {  var $db= "localhost";//数据库地址;  var $dbname = "root";//用户名;  var $dbpwd = "";//密码;  var $dbtable = "mysql";//使用的数据库  var $conn;    //数据库连接;  var $result;    

  • PHP 分页类代码(简单好用型)第1/2页

    [code] <?php // pager类 $page = $_GET 当前1/2页 12下一页阅读全文

  • 又一个php 分页类实现代码

    复制代码 代码如下: <?php function genpage(&$sql,$page_size=10) { global $pages,$sums,$eachpage,$page; //总页数,总记录,每页数,当前页 $page = $_GET["page"]; if($page ==0)$page =1; $eachpage = $page_size; $pagesql = strstr($sql," from "); $pagesql = &

  • mysql+php分页类(已测)

    复制代码 代码如下: <?php       /*      mysql_pager.class.php 三个参数. mysql_query()的结果, url变量page, 您要的每页记录数      例子在这个文件底部      淡水河边整理测试      */ class mysql_pager {         // define properties         var $page;         var $result;         var $results_per_pa

  • PHP通用分页类page.php[仿google分页]

    page.php 复制代码 代码如下: <?php /** ** 通用php分页类.(仿Google样式) ** 只需提供记录总数与每页显示数两个参数.(已附详细使用说明..) ** 无需指定URL,链接由程序生成.方便用于检索结果分页. ** 表单采用GET方法提交,可保证在诸如查询之,删除之类的操作时,不丢失URL参数 **/ class Pager{ //IE地址栏地址 var $url; //记录总条数 var $countall; //总页数 var $page; //分页数字链接 v

  • 一个PHP分页类的代码

    下面看这一段代码: PHP 复制代码 代码如下: <? /** * filename: ext_page.class.php * @package:phpbean * @author :feifengxlq<feifengxlq#gmail.com><http://www.phpobject.net/> * @copyright :Copyright 2006 feifengxlq * @license:version 2.0 * @create:2006-5-31 * @m

随机推荐