【发布时间】:2021-09-20 12:02:04
【问题描述】:
我需要在我的 API 中添加分页系统。我的数据库服务器是 ODBC。我的代码如下所示:
public function pagination($query, $maxperpage, $values=array()){
$query = explode('LIMIT', $query);
try {
$statement = $this->db->prepare($query[0]);
$statement->execute($values);
$result['row_number'] = $statement->rowCount();
$result['max_per_page'] = $maxperpage;
$result['page_nb'] = ceil($result['row_number']/$maxperpage);
return $result;
} catch (\PDOException $e) {
exit($e->getMessage());
}
}
但这给了我以下信息:
"pagination": {
"row_number": -1,
"max_per_page": "1000",
"page_nb": 0
}
为什么行号不起作用?
查询看起来不错
从 G2001F.LOCMSTP WHERE LO_DEP=:lodep 中选择 lo_sit, lo_dep, lo_wrh, lo_addr, lo_rotcls, lo_asscls, lo_stotyp, lo_extcod, lo_blccod
而且这些值似乎也被很好地插入了
Array
(
[lodep] => DEMO
)
$statement->rowCount() 返回 -1 没有意义。
【问题讨论】:
-
我猜这是一个错误。您是否查看过以下帖子php.net/manual/en/pdostatement.rowcount.php#113608
-
第一次遇到不是我的错的错误,哈哈