如何创建Json Pagging博士与安卓系统


How to Create Json Pagging in Php With Android

我在Php中创建Json并在android应用程序中进行解析,如下所示:

<?php
include_once 'database.php';
$db = new database ();
$posts = array ();
$data = array ();
$meta = array ();
$pagging = array ();
if (isset ( $_GET ['type'] )) {
    $type = $_GET ['type'];
    if ($type == 'user') {
        $query = "SELECT * FROM user WHERE user.status=1 ORDER BY `id` ASC ";
        $result = $db->query ( $query );
        if (count ( $result ) > 0) {
            foreach ( $result as $key => $value ) {
                $data ['id'] = $value [0];
                $data ['email'] = $value [1];
                $data ['password'] = $value [2];
                $data ['regid'] = $value [3];
                $data ['time'] = $value [4];
                $data ['status'] = $value [5];
                // $data ['status'] = $value [6];
                array_push ( $posts, $data );
            }
            $meta ['meta_status'] = "1";
            $meta ['meta_message'] = "Main Categories Success";
        } else {
            $meta ['meta_status'] = "0";
            $meta ['meta_message'] = "Main Categories Have Null Value";
        }
    }
}
$main ['meta'] = $meta;
$main ['data'] = $posts;
$main ['pagging'] = $pagging;
header ( 'Content-type: application/json' );
echo json_encode ( $main );
?>


通过上面的代码,我得到了所有选定的数据,但我想把这些数据分页
所以我想要Pagging Object中的下一页数据url,所以有人知道该怎么做

非常感谢。

在Get参数的页码中传输,您将得到10行的结果。

试试这个:

include_once 'database.php';
$db = new database ();
$posts = array ();
$data = array ();
$meta = array ();
$pagging = array ();
if (isset ( $_GET ['type'] )) {
    $type = $_GET ['type'];
    if ($type == 'user') {
        if (!isset ( $_GET['page'] )) $_GET['page'] = 1; //page number
        $limit = 10; // limit per page
        $offset = (($limit * $_GET['page']) - $limit); // offset 
        /* count of page (if needed) */
        $query = "SELECT COUNT(*) FROM user WHERE user.status=1 ORDER BY `id` ASC";
        $result = $db->query ( $query );
        $all = $result[0][0];
        $page_count = ceil($all/$limit); // count of page (if needed)
        /* **************** */
        $query = "SELECT * FROM user WHERE user.status=1 ORDER BY `id` ASC LIMIT $offset, $limit";
        $result = $db->query ( $query );
        if (count ( $result ) > 0) {
            foreach ( $result as $key => $value ) {
                $data ['id'] = $value [0];
                $data ['email'] = $value [1];
                $data ['password'] = $value [2];
                $data ['regid'] = $value [3];
                $data ['time'] = $value [4];
                $data ['status'] = $value [5];
                // $data ['status'] = $value [6];
                array_push ( $posts, $data );
            }
            $meta ['meta_status'] = "1";
            $meta ['meta_message'] = "Main Categories Success";
        } else {
            $meta ['meta_status'] = "0";
            $meta ['meta_message'] = "Main Categories Have Null Value";
        }
    }
}
$main ['meta'] = $meta;
$main ['data'] = $posts;
$main ['pagging'] = $pagging;
header ( 'Content-type: application/json' );
echo json_encode ( $main );