$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