$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'];
$ resultにはすべてのユーザー行が含まれていますが、totalは0を返し続けます。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
ini_set( "mysql.trace_mode"、 "0");私の問題を解決する。質問ありがとうございました: –