CodeIgniterのPaginationではまる

公開日: : 未分類

CodeIgniter徹底入門とユーザガイドを読みながら試行錯誤しているが、Paginationではまっていた。
Paginationクラスで自動的に複数のページへのリンクが作られるのはよいのだが、元々のページからどうやって次のページへとデータを渡せばよいのかがわからなかった。

実は同じように苦労している人は多いようだ。

まずはCodeIgniterのPaginationクラスの使い方を簡単にまとめてみる。

$this->load->library('pagination');

$config['base_url'] = 'http://example.com/index.php/test/page/';
$config['total_rows'] = '200';
$config['per_page'] = '20'; 

$this->pagination->initialize($config); 

echo $this->pagination->create_links();

のような設定でPaginationクラスを使うと、2ページ目、3ページ目は

http://example.com/index.php/test/page/20
http://example.com/index.php/test/page/40

のようにして呼ばれるはず。
この20や40の位置は、

$config['uri_segment'] = 3;

のようにして指定できる。上記の例の場合はuri_segmentの値は3だ。
ユーザガイドを読むと、上記の20や40はページ番号のように書かれているが、実際はオフセット値が渡ってくる。自分はこれではまっていた。
それと、’uri_segment’ はうまく動作していないように見える。謎だ。

上記のように、Paginationにより自動生成されたリンクをクリックして呼び出されるページにはデフォルトではオフセット値しか渡すことができない。
このため、もっといろいろデータを渡したい場合には、CodeIgniter(に限らず):検索結果とページングの嫌な関係: CodeIgniterで発火する?
にあるようにセッションを使わないといけないと思われる。
このあたり、常識なのかも知れないが自分のような初心者にはわかりづらい。CodeIgniter本にはひとこと書いておいて欲しかった。
CodeIgniterのセッションクラスの使い方まとめ – devel-log.tar.gz

CodeIgniter徹底入門
CodeIgniter徹底入門 河合 勝彦 鈴木 憲治 安藤 建一

翔泳社 2008-06-10
売り上げランキング : 66699

Amazonで詳しく見る by G-Tools

関連記事

no image

iPhone アプリアイコン設定

AppStore でアプリを売る一連の流れを知るために作っているアプリが大体できてきたので、ついにア

記事を読む

no image

ムジカノーヴァ2012年7月号でiPadアプリ「おんぷちゃん」が紹介されました

昨日2012年6月20日発売のムジカノーヴァ2012年7月号で、深見友紀子先生にiPadアプリ「おん

記事を読む

no image

あまちゃんオープニングテーマ、暦の上ではディセンバーなどをiTunesで買う

奥さんがNHKのあまちゃんにはまっていて、曲を買いたいというので調べていたら意外に情報がなかったので

記事を読む

no image

4月1日よりGoogle検索アルゴリズムの変更? によりサイト訪問者数が激減

気づいたら4月1日からのブログの訪問者数が激減していた。 Stats を確認してみると、これまで

記事を読む

no image

WordPress 導入

これまでブログにはMovableTypeを使っていたが、MacBook 購入を機会にWordPres

記事を読む

LogLocations 1.3.3 Release

恒例の、年末年始時間があるときの LogLocations のアップデート。久しぶりに起動したら、i

記事を読む

no image

するぷろで初投稿。

必ず結果が出るブログ運営テクニック100 プロ・ブロガーが教える“俺メディア”の極意 を読んで、する

記事を読む

no image

ゴールデンスランバー 感想

ロンドン行の機内で鑑賞。 面白いとは聞いていたが予想以上だった。 伊坂さんがすごいのか監督さんがすご

記事を読む

サイト名とドメインを tokentoken.com に変更しました

これまでサイト名とURLに tokentoken.com を使ってましたが、devcafe.

記事を読む

no image

いまさらながらGoogle Chrome導入

Google Chromeは出たばかりの頃に使って、確かに速いけれどもFirefoxで使っている便利

記事を読む

Comment

  1. Kenji より:

    CodeIgniter 2.0以降は普通にクエリ文字列でキーワードを渡すのがいいように思います。

  2. Kenji より:

    と思いましたが、標準のページネーションクラスでは無理ですね…

  3. Kenji より:

    標準のページネーションクラスで
    http://d.hatena.ne.jp/Kenji_s/20110420/1303312489
    でききました。

  4. admin より:

    @Kenji
    おお、base_url に入れて渡せるのですね。
    サンプルコードのおかげでわかりやすいです。
    ありがとうございました!

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

Rinker 導入でInternal Server Error発生

商品リンク管理プラグインRinker(リンカー)の公式サイト | お

新しいAirPodsを買ってみた

2019年3月20日に突如発表された、新しい AirPods を買っ

Apple Developer Program更新2019

今年も更新。税別 11800円だった。 2009年から

ボーカロイド技術論

よくこんなマニアックな本を出したものだし、よくここまで内情を書いたも

さくらVPSのPHPを5.3から7.2にアップデート

iPhoneから転送した写真をWordpressブログにアップロード

→もっと見る

PAGE TOP ↑