如何使用PHP从Cassandra DB中获取每页数据

xxslljrj  于 12个月前  发布在  Cassandra
关注(0)|答案(1)|浏览(118)

我想为我的数据表添加下一个和上一个链接。如何编写查询以获取下一个和上一个链接数据

<div>
   <a style="margin-left:5px;" href="#" class="previous">&laquo; Previous</a>
   <a style="margin-left:5px;" href="#" class="next">Next &raquo;</a>
</div>
$recordsPerPage = 20;

$totalPages = ceil($totalCount / $recordsPerPage);

$page = isset($_GET['page']) ? $_GET['page'] : 1;

$offset = ($page - 1) * $recordsPerPage;

$query = "SELECT * FROM history" . $whereClause . " LIMIT " .$recordsPerPage. "OFFSET " .$offset.";";

我期待得到数据只有20条目第一当我点击下一步我想显示下20条目

9njqaruj

9njqaruj1#

您需要调用nextPage:

<?php
$cluster   = Cassandra::cluster()
               ->withContactPoints('127.0.0.1')
               ->build();
$session   = $cluster->connect("simplex");
$options   = array('page_size' => 5);
$rows      = $session->execute("SELECT * FROM paging_entries", $options);

while (true) {
    echo "entries in page: " . $rows->count() . "\n";

    foreach ($rows as $row) {
        echo "key: " . $row['key'] . ", value: " . $row['value'] . "\n";
    }

    if ($rows->isLastPage()) {
        break;
    }

    $rows = $rows->nextPage();
}

这里还有更多的例子:
https://docs.datastax.com/en/developer/php-driver/1.3/features/result_paging/

相关问题