$result = $db_con->query("SELECT SQL_CALC_FOUND_ROWS * FROM users LIMIT 0,10");
$count_result = $db_con->query("SELECT FOUND_ROWS() as totalcount");
$row = $count_result->fetch_assoc();
$total = $row['totalcount'];
$ total总是返回0,即使$ result包含其中的所有用户行。FOUND_ROWS()总是返回0
ini_set("mysql.trace_mode", "0");
我在这里找到了一个类似的Q,但它没有解决我的问题。
当我在MySQL客户端中使用2条select语句时,它总是输出正确的计数。只是似乎无法弄清楚如何让它在我的PHP页面上工作。
PHP版本:5.2.5构建6 的MySQL版本:5.1.30
注:我这里提供的代码没有被我的实际项目中使用,然而,它确实例证我与遇到的问题无法检索总数。从我读过的有关found_rows()的代码中,该代码应该可以工作,但不会。
@Seth:您是否尝试添加LIMIT子句? – gahooa 2009-06-20 16:23:12
ini_set(“mysql.trace_mode”,“0”);解决我的问题。感谢您的问题:) – 2012-03-14 12:54:56