![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
CakePHPのPaginatorを使ったページリンクが正しく出力されません。
1ページ目は正しく出力できていますが、2ページ目などに移動した際にURLがおかしくなります。
現状
1ページ目
http://www.example.com/hoge/2
↓
2ページ目
http://www.example.com/hoge/2/page:3
理想
1ページ目
http://www.example.com/hoge/2
↓
2ページ目
http://www.example.com/hoge/3
また、パラメータがついた場合も
1ページ目
http://www.example.com/hoge/2?hoge=hoge
↓
2ページ目
http://www.example.com/hoge/3?hoge=hoge
となるようにしたいのですが、何を間違えているのでしょうか。
ちなみにソースは以下のようになってます。
View/Hoge.php
echo $this->Paginator->prev('< 前へ', array(), null, array('class' => 'prev disabled'));
echo $this->Paginator->numbers(array('separator' => ''));
echo $this->Paginator->next('次へ >', array(), null, array('class' => 'next disabled'));
Config/routes.php
Router::connect(
'/hoge/:page',
array(
'action' => 'hoge',
),
array(
'pass' => array(
'page',
)
)
);
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
いやいや、おかしくないですw
> 2ページ目
> http://www.example.com/hoge/2/page:3
page:3はCakePHPで言うnamedパラメータと呼ばれるものです。
コントローラで$this->request->params['named'] をダンプすると表示されます。
このnamedパラメータはCakePHPでは良く出てきます。
> 理想
確かにRouterを駆使したら出来るかもしれないけど、ページネーションはページ数だけ維持するとは限りません。
Bakeしたソースだと一覧(index)で表のタイトルをクリックしたらそのカラムで並べ替え(昇順/降順)が可能で、その並べ替えの状態を維持してページングを維持してますが、ソート対象のカラムや並び順もnamedパラメータに乗せてページ遷移してるから状態維持できるんですよ。
次のページに行ったらID順に戻ってたらページングにならんでしょ?
Routerに小細工するとそういうケースが出てきて行き詰まる要因になります。
やるとしてももうちょっと熟練されてからが良いかと。
> また、パラメータがついた場合も
?パラメータのことをQueryStringと言いますが、これはコントローラ側で設定します。
やり方は参考URLを参照してみて下さい。
> パラメータをクエリストリングで指定できるような設定もあるようだ。下記のようにparamTypeにquerystringを設定すると、「?page=2」のような指定で遷移した。
の箇所
参考URL:http://j-caw.co.jp/blog/?p=264
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- HTML・CSS 全部のアクセスを指定したページに転送させたい 2 2022/06/28 16:33
- AJAX JavascriptからPHPへのAjax通信でnullが返ってくる 3 2022/08/03 22:00
- XML XML同じ名前の要素を自動で集約するツール 1 2022/04/11 09:21
- C言語・C++・C# プログラミングのペーパーテスト 実行結果を表示せよ #include <stdio.h> int h 1 2022/07/09 15:27
- Windows 10 バッチファイルの記述法とルールについてアドバイスをお願いいたします。 1 2022/04/13 10:50
- JavaScript JavaScriptで「〇以上▲まで」の書き方 1 2022/07/20 14:44
- C言語・C++・C# プログラミングのペーパーテスト 実行結果がどのように表示されるか答えよ #include <stdi 1 2022/07/09 14:27
- PHP PHPを使って、別サイトの一部を取得して表示したいのです。。 1 2023/01/18 21:45
- その他(プログラミング・Web制作) pythonのcondaコマンドの仕様について 2 2022/06/24 00:13
- PostgreSQL 【PostgreSQL】行の値の並びを変えるには 1 2023/03/21 16:46
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBA コレクションに2次元配列...
-
[CakePHP] Paginatorのリンクが変
-
vb作成したらでbeep音が鳴りま...
-
VB.NETからVBAマクロ(引数)を呼...
-
PHPの変数値をリンクさせたい
-
エラーの理由が分りません。Pri...
-
protectedなのにアクセスできな...
-
number_formatが勝手に四捨五入
-
UNIX CP "で上書きしません"
-
issetで変数の存在をチェックし...
-
Dosブロンプトでtabを出力したい
-
【C#】DataGridViewの最大列数...
-
バッチファイルでpingの結果を...
-
wordの差し込み印刷で文字...
-
shシェルスクリプト 空白行の...
-
ps3で久しぶりにCDの音楽情報取...
-
「取得先」という表現について
-
excel access連携 このテーブル...
-
Yahoo! JAPAN IDを新規取得でき...
-
DTOとEntityの差は何ですか。
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBA コレクションに2次元配列...
-
VB.NETからVBAマクロ(引数)を呼...
-
classの再定義エラーについて
-
VB6のコンボボックスのテキスト...
-
可変変数にアロー演算子を使いたい
-
PHPでの画像の形式の変換
-
VB.NETSystem.Xml 要素数を得る...
-
protectedなのにアクセスできな...
-
issetで変数の存在をチェックし...
-
vb作成したらでbeep音が鳴りま...
-
どういうプログラムを関数化を...
-
PHPの名前空間インポートについて
-
エラーの理由が分りません。Pri...
-
関数から関数を呼び出したとき...
-
PHP、ヒアドキュメント内でのIF...
-
protectedなのにアクセスできな...
-
PHPの変数値をリンクさせたい
-
関数の動きと記述方法の意味を...
-
htmlで変数の表示
-
アロー演算子について
おすすめ情報