标签:php mysqli pagination
这个代码以前是在mysql中,现在因为它已被弃用,我决定在mysqli中转换我的代码,但是我在我的页面中有这个问题有分页,在它使用mysql之前没有错误,但现在我得到了这一行出错:
Warning: mysqli_fetch_assoc() expects exactly 1 parameter, 2 given
错误是显而易见的,我知道,但我不知道如何以另一种方式做到这一点,因为以前我的代码在那一行是
$pages = ceil(mysql_result($pages_query, 0) / $limit); // total number of pages
我也尝试过这个
$pages = ceil($pages_query / $limit); // total number of pages
但是我得到了这个错误
Notice: Object of class mysqli_result could not be converted to int
所以我想知道如何将mysql_ * mysql_result转换为mysqli?或者还有其他方法吗?
到目前为止我的代码是这样的:
<?php
include 'dbcontroller.php';
$limit = 10; // limit the number of post per page
$pages_query = mysqli_query($conn, "SELECT COUNT('id') FROM news");
$pages = ceil($pages_query / $limit); // total number of pages
$page = (isset($_GET['page'])) ? (int)$_GET['page'] : 1;
$start = ($page - 1) * $limit; // set the page to 0
$query = mysqli_query($conn, "SELECT * FROM news ORDER BY date DESC LIMIT $start, $limit");
while($row = mysqli_fetch_array($query)) {
....
}
?>
解决方法:
问题在于这行,你不能直接使用mysqli_query()而不需要获取数据
$pages = ceil($pages_query / $limit); // total number of pages
Returns FALSE on failure. For successful SELECT, SHOW, DESCRIBE or
EXPLAIN queries mysqli_query() will return a mysqli_result object .
它会是的
$pages_query = mysqli_query($conn, "SELECT COUNT('id') FROM news");
您需要从查询对象中获取数据
$row = mysqli_fetch_array($pages_query);// fetch fata
$ic = $row[0];
$pages = ceil($ic / $limit); // total number of pages
标签:php,mysqli,pagination 来源: https://codeday.me/bug/20190706/1395778.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。