アクティブなレコードクラスを使って最後のクエリを取得し、その一部を修正して、そのコードをcodeigniterでやり直すことはできますか?私はページ分割のために合計ページを取得しようとしています。私は直接クエリを書くことはできません。なぜなら、実行時にいくつかのforループやif文がページに送信されるフォームに応じて動的に作成されるからです。あなたが使用して最後のクエリを取得することができますcodeigniterの最後のクエリを変更してやり直してください
1
A
答えて
0
あなたがあるため、全ページの倍のクエリを実行しますか?はいの場合は、SQLでSQL_CALC_FOUND_ROWS
とFOUND_ROWS()
をチェックします。
$this->db->select("SQL_CALC_FOUND_ROwS id",false);
$this->db->any_AR_function(....);
$this->db->limit(...);
$result = $this->db->get();
この後、あなたはこれを呼び出すことができます。
$this->db->select("FOUND_ROWS() as count",false);
$count = $this->db->get();
が、私はこれがあなたが望むものであると思います。
0
:
$last_query = $this->db->last_query();
あなたはこのクエリを変更してから行うことができます。
$query = $this->db->query($modified_query);
foreach($query->result() as $row)
{
}
関連する問題
- 1. すべてのやり直しの変更をやり直してください
- 2. 質問のこのセクションをやり直してください
- 3. プッシュ後のgitの競合解決をやり直してください。
- 4. Python:何かが変わるまで最後のJSONリクエストをやり直してください
- 5. コンパイルをもう一度やり直してください
- 6. codeigniterのURLを書き直してください
- 7. ダウンロードリストビューでもう一度やり直してください
- 8. テーブルネームスペースがまだ準備されていません。後でやり直してください。
- 9. Python:何かをしてから睡眠をやり直してください
- 10. dijitのテーマやスタイルを変更してください
- 11. マクロ内の最後の行の値を変更してください
- 12. メインWP_Comment_Queryを変更してください(記事の最後のコメント)?
- 13. "sudo"で最後のコマンドを繰り返してください
- 14. Git:コミットを忘れてからやり直してください
- 15. 仕上げ後の状態を変更してください
- 16. 変更後のdivを再入力してください
- 17. セシウムイメージャのレベルをより速く変更してください。
- 18. ボタンをクリックした後に変更してください。 angularjs
- 19. Drupalは「ウェブサイトに予期しないエラーが発生しました。後でやり直してください」
- 20. ユーザエージェントを変更してください
- 21. ラスタエクステントを変更してください
- 22. org.eclipse.jdt.core.dom.ASTPArserを変更してください
- 23. ServiceStack:DefaultNoProfileImgUrlを変更してください
- 24. SystemParametersを変更してください
- 25. ステータスコードを変更してください。
- 26. txtファイルを監視して最後の変更がないことをメールしてください
- 27. facebook php sdk serverエラーが発生しました。後でやり直してください。
- 28. Facebookエラー:アプリでエラーが発生しました。後でやり直してください。
- 29. Facebook認証エラーが発生しました。後でやり直してください。
- 30. 同じUIをもう一度やり直してください
重複した質問:@stackoverflow.com/questions/8093370/restarting-active-query-in-codeigniter – Repox
@Repoxこれら2つの質問は、関連しているが異なるトピックをカバーしています。私はこれがあなたが言及している質問と重複しているとは思わない。 – yasar
いずれの場合も、2つの質問は非常に関連しているように見えます。あなたが得た回答に応答しない理由は何ですか?いずれの質問でも? – Repox