質問: プログラムPHPのPEAR/Pagerについて質問します。 今、よく見かけるショピングサイトのカートシステムの勉強をしているのですが、 仮に、データベース(mysql)に100件の商品情報があるとして、 そのデータを読み込んで、PEAR/Pagerを使って10ページで1ページ10件のデータを 表示して、各々の項目をクリックすると、詳細なページにジャンプするようになっています。 と、ここまでは出来ているのですが、例えば3ページ目の5件目の項目をクリックして詳細なページにジャンプさせて戻ったときに3ページ目の5件目の所に戻らせたいのですが、1ページ目の 1件目(つまり一番最初のページ)に戻ってしまいます。 何かPEAR/Pagerの設定で任意の場所に戻らすことが出来るのでしょうか? どなたか詳しい方がいれば、ぜひご指導お願いいたします。
回答: 戻るというのは、ブラウザのバックボタンででしょうか? Pagerを使った際のURLは、次のようにページ番号がついているはずなので、バックボタンであれば、元のページに戻れると思います。同様にリンクであってもJavaScriptがOKなら、OnClickにhistory.back()を指定してあげれば大丈夫かと思います。 > > hoge.php?start=1 > > > hoge.php?start=2 > > > hoge.php?start=3 > > > hoge.php?start=5 > > > 引用元: もし、上記の方法が嫌だとするのであれば、戻る際のリンクにパラメタを埋め込む必要があります。 手軽にやるのであれば、現在のページ番号を常にセッションに保持させて、戻るリンクに付加するとかでしょうか。 戻った際に、currentPageに指定してあげれば期待する動作になるかと思います。 セッションだけで完結させることも可能ですが、先頭に戻りたいリンクと、順序を維持したいリンクとが混在した際にややこしくなるかと思います。 何かの参考になれば。