ここから本文です

PHPでのページングについて

jjf********さん

2013/3/1318:43:09

PHPでのページングについて

PHPでサイト作成をしています。

例えば30ページあったとすれば
現状では、1~30までのページ数が全て表示されてリンクされています。

そこでブログなどでよくある、ページ数を中抜きしたような表示にしたいのですが
どのような記述にすれば良いでしょうか?

<< 1 2 3 4 5...... 97 98 99 100 >>

もしくは

<< 1 2 3 4 5 6 7 8 9 10 .... >>

のような感じです。

宜しくお願いします。

補足ご回答ありがとうございます。
アドバイスを受けて考えてみました。

http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1410373695...

こちらに載せていますのでご教授いただければ幸いです。
宜しくお願いします。

閲覧数:
229
回答数:
2
お礼:
50枚

違反報告

ベストアンサーに選ばれた回答

vs3********さん

2013/3/1320:58:43

単純に全データ件数から全ページ数を計算して、
例えば5ページずつなら、1~5と、(全ページ数-1)~(全ページ数)のリンクを作ればいいだけじゃないですか?
難しいことは一つもありません。

今どのようにそおのページャーのソースを作り出しているのかわかりませんが、
仮にPHPでforとかでやってるのだとしたら、forを2つに分け、
for ($i = 1; $i <= 5; $i++) {
}
と、
for ($i = $pageCount - 4; $i <= $pageCount; $i++) {
}
ってやるだけですね。

この回答は投票によってベストアンサーに選ばれました!

ベストアンサー以外の回答

1〜1件/1件中

プロフィール画像

カテゴリマスター

shimixさん

編集あり2013/3/1322:00:11

jjfkeicさん

今現在どうやって書き出しているのかわからないので、やり方だけ・・・

今のページの前後何ページを表示するかだけの問題ではないですかね。先頭~最終ページまでのanchor要素が作れているのであれば、現在のページとの差が一定値以内のページだけ表示すればいいと思います。



(追記)
「中抜き」というナビゲーションはあまり見たことがないです(上記の回答にしました)。

<< 1 2 3 4 5...... 97 98 99 100 >>

よりは、自ページが20ページで前後4ページとして

<<.. 16 17 18 19 20 21 22 23 24 ...>>

の方が見慣れている気がします(Googleもこうなっているし・・・)

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる