【问题标题】:pdo page wise fetchingpdo 页面明智地获取
【发布时间】:2010-12-31 06:28:18
【问题描述】:

我正在使用this php pdo 包装器。这是我的数据库类。

class Db
{
    private static $_pdoObject = null;
    protected static $_fetchMode = PDO::FETCH_ASSOC;
    protected static $_connectionStr = null;
    protected static $_driverOptions = array();

    private static $_username = null;
    private static $_password = null;

  public static function setConnectionInfo($schema, $username = null, $password = null, $database = 'mysql', $hostname = 'localhost')
    {
        if($database == 'mysql') {
            self::$_connectionStr = "mysql:dbname=$schema;host=$hostname";
            self::$_username      = $username;
            self::$_password      = $password;
        } else if($database == 'sqlite'){
            // For sqlite, $schema is the file path
            self::$_connectionStr = "sqlite:$schema";
        }

        // Making the connection blank
        // Will connect with provided info on next query execution
        self::$_pdoObject = null;
    }
    public static function getResult($sql, $params = array())
    {
        $statement = self::_query($sql, $params);
        return $statement->fetchAll(self::$_fetchMode);

    }

    private static function _query($sql, $params = array())
    {
        if(self::$_pdoObject == null) {
            self::_connect();
        }

        $statement = self::$_pdoObject->prepare($sql, self::$_driverOptions);
    $arrayjson1=array(
            'success' => false,
            'message'=>'database error '
        );
     $msg= formjson(array(),array(),$arrayjson1);
        if (! $statement) {
            $errorInfo = self::$_pdoObject->errorInfo();
        //~ print_r($errorInfo);
            //~ echo $msg;exit; 
            throw new PDOException("Database error [{$errorInfo[0]}]: {$errorInfo[2]}, driver error code is $errorInfo[1]");
        }

        $paramsConverted = (is_array($params) ? ($params) : (array ($params )));

        if ((! $statement->execute($paramsConverted)) || ($statement->errorCode() != '00000')) {
            $errorInfo = $statement->errorInfo();
                //~ print_r($errorInfo);
            throw new PDOException("Database error [{$errorInfo[0]}]: {$errorInfo[2]}, driver error code is $errorInfo[1]");
        //~ echo $msg;exit;
        }

        return $statement;
    }
}

我调用这个查询是为了获取所有用户

     $sql="select  userid,concat_ws(' ',firstname,lastname) as name $fields 
        from users where 1=1   $condition order by updatedon $limit";
    $row=Db::getResult($sql,$query);

我想要那个

输入

通过

  1. 没有。每页记录数 2.页码

这样吧

输出

come 应该是该页面的记录,仅按每页记录。

如何在 pdo 中实现这一点。

请帮忙。谢谢

【问题讨论】:

    标签: php arrays pdo


    【解决方案1】:

    阅读以下文章。这将帮助您了解您感兴趣的标准。

    paging

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-01-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-03-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多