• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:URL固定で、MySQLデータを、ページングしたい)

URL固定でMySQLデータをページングする方法

このQ&Aのポイント
  • MySQLデータをURL固定でページングする方法について調べています。
  • POSTを使用する場合、現在のページを取得する方法について検討しています。
  • ページングの際に非表示切替ではなく、DBからデータを都度取得する方法を実現したいです。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.3

まず、データ取得を表示するページのデータだけにするということなら javascriptでの対象外データの非表示切り替えでは、合致しないことになります。 セッションだと、これまでの閲覧履歴はわかりますが、URL固定のGETだと 先頭ページ|前のページ|ページ番号指定|次のページ|最終ページ といったリンクで表示する対象ページを切り替えることができません。 よって、簡単なのは 対象のページ番号をPOSTのhiddenデータにしてしまうことでしょう。 ただ、どのページも固定のURLにしてしまうと、 対象ページのURLをブックマークしても意味がないですし、 ブラウザの既読管理を使った、リンクの色分けが出来なかったり 2ページ目以降が検索エンジンの対象にもならないなど、厄介なこと多いので、 GETデータに表示対象のページ番号にしたURLにするのが 普通じゃないですかね。 (業務用Webアプリで、既読管理もブックマークもSEOも必要なくて  逆にブックマークされないように固定URLにしたい ということかもしれませんが)

re97
質問者

お礼

回答ありがとうございました >どのページも固定のURLにしてしまうと、 >対象ページのURLをブックマークしても意味がないですし、 >ブラウザの既読管理を使った、リンクの色分けが出来なかったり >2ページ目以降が検索エンジンの対象にもならないなど、厄介なこと多い ・初めて知りました ・再度検討したいと思いますー

その他の回答 (2)

  • agunuz
  • ベストアンサー率65% (288/438)
回答No.2

>現在ページを取得できない 「現在ページ」とは何を指していますか?ちょっと意味がわかりません。 たとえばPOSTで渡すなら、そのform要素内に必要なものを(type属性が"hidden"のinput要素で)埋め込んでおけばいいだけです。 <a href="<?= '?page=' . ($page+1); ?>">NextPage</a> などとしているのを <form action="" method="post"><input type="hidden" name="page" value="<?= ($page + 1); ?>"><input type="submit" value="NextPage"></form> とするだけです。 でもいったい何のためにURL固定にする(QueryStringの付加をさせない)のかが理解出来ませんけどね。使いにくいインタフェイスになるだけだと思いますけど・・・

re97
質問者

お礼

回答ありがとうございましたー

回答No.1

URLが見た目変わらないだけでいいならhiddenに現在表示しているページなんかを埋め込んで送信して処理すればOK。 ページの遷移を伴いたくない時はAjaxでサーバ上からJSON形式で吐き出して、それを取得して処理すればOK。

re97
質問者

お礼

回答ありがとうございましたー

関連するQ&A

専門家に質問してみよう