• ベストアンサー

ページング処理(リンク非表示)

こんにちわ。BBSの投稿をMySQL文で「次のページ」や「前のページ」に5件の投稿があれば、クリックした場合、投稿5件を表示するということはできたのですが、その投稿がない場合でも「次のページ」、 「前のページ」というリンクが表示されてしまします。 これを投稿がない場合は非表示にするなどの方法をお教え願えないでしょうか。

  • msnxl
  • お礼率81% (36/44)
  • PHP
  • 回答数1
  • ありがとう数1

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

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

1) 該当投稿の全件数(mysql_num_rows()を使用して取得) 2) 1ページあたりの表示件数(例では5件) 3) 現在のページ番号 以上から計算して、条件分岐するしかないと思います。

msnxl
質問者

お礼

ご回答ありがとうございます。参考にさせていただきます。

関連するQ&A

  • ページング処理

    こんにちわ。今、ページング処理に苦しんでいるものです。 データベースでデータが50件あるとして、10件以上あるときは 「次の10件へ」や「前の10件へ」というリンクをつくりクリックしたときにページ遷移をするというようなページングを実装したいのですが。 考え方がわからず、悩んでおります。 セレクト文で以下のように $strSQL = ""; $strSQL .= " SELECT "; $strSQL .= " * "; $strSQL .= " FROM "; $strSQL .= " BBS "; $strSQL .= " ORDER BY "; $strSQL .= " ID DESC "; $strSQL .= " LIMIT 10 "; $strSQL .= " OFFSET 20 "; 昇順で20行目から10行だけ取り出すということはできたのですが。 ページング処理のロジックがわからないのです。 なにか簡単なものでもいいので、記述などをしていただけますでしょうか?

    • ベストアンサー
    • PHP
  • Ajaxでページングしたいのですが・・・

    Ajaxでページングしたいのですが・・・ phpとmysqlでページングを行っています。詳しくは下記の通りです。 データの総数は全部で35件あります。 1ページ目(hoge.com/list/?id=1)で 1件目~18件目を表示します。 2ページ目(hoge.com/list/?id=2)で 19件目~35件目を表示します。 1ページ目には『次のページ』と書いた画像を表示させ2ページ目へリンクを張り 2ページ目には『前のページ』と書いた画像を表示させ1ページ目へリンクを張っています。 ページングの動作としては問題ないのですがこのページングをAjaxと連携させるには どうすればいいのでしょうか? できるだけurlにパラメータは付けずにhoge.com/list/としクリックしたリンクにより値を送りそれぞれのページングデータを表示させたく思っております。 検索してみたのですが前もってそれぞれ静的ページを作っておきそれを読み込ませるという方法はあったのですがあくまでも動的に行いたいです。 行い事のサンプルページの紹介でも構いませんので実現できる方法を教えてください。

  • PHP MySQL ページング処理

    はじめまして、 現在ページング処理で悩んでます。ご協力お願いします。 PHP4.4.6とMySQLを使用し 1ページ10件 MAXページ99ページ 前次12345・・・のように表示させ・・・の部分をクリックすると データが51件以上 前次45678・・・ データが60件以下 前次23456 データが70件以下 前次34567 のように表示させるにはどのような処理、考え方をしたらよいでしょうか? なんとか自力で 前次12345 は表示、動作できたのですがその先どうしたらいいか解かりません。質問解かりにくいかもしれませんが、どうかお知恵をお貸しください。よろしくお願いします。

    • ベストアンサー
    • PHP
  • phpでページング処理の書き方

    環境:php+mysql サイト内検索をphpで書いてます。 ■やりたいこと 検索結果が10件として1ページの検索結果数を3件とした場合 ページングは4ページまでとして、最終ページの4ページ目で 「次へ」のボタンを非表示にしたいです。 ■現状 検索結果は表示されますが、検索結果ページで 「次へ」 や 「戻る」 ボタンをつけて動作する際、いつまでの「次へ」やボタンが表示されページングできてしまいます。。 実際に書いている処理 <?php if ($num > 3){//検索結果が3件以上でページングが表示される if($page>0){ echo "<a href='./re.php?key={$a}&pages=".($page-1)."'>前の3件</a>"; } echo "&nbsp;&nbsp;|&nbsp;&nbsp;<a href='./re.php?key={$a}&pages=".($page+1)."'>次の3件</a>"; } ?> if ($num > 3)で何か処理を書かなければならないと思いますが、、 アドバイスいただければ幸いです。 よろしくお願いいたします。

    • ベストアンサー
    • PHP
  • ページング処理について教えて下さい。

    初心者ですので、下記説明自体が解りにくいかもしれませんが、教えて下さい。 宜しくお願い致します。 PHPとMySQLを使用して、「次へ」「前へ」のボタンをクリックする度に、Mysqlに登録されているレコード(背景色や文字色)を読み込んで、セッションに保存し表示させる、というプログラムを作成しております。 解らないのは、『Mysqlに登録されているレコード(背景色や文字色)を読み込んで、セッションに保存』です。 [ 前へ / 1 2 3 4 5 / 次へ ]といったものは、 <a href="<?php echo $_SERVER['PHP_SELF']."?page=".$next; ?>" 等とやったので、出来るのですが、今回のはボタンがJavascriptなので、良くわかりません。 拙い説明で申し訳ありませんが、お解りになられる方がいらっしゃいましたら、ご教授下さいます様、宜しくお願い申し上げます。 ・「次へ」「前へ」のボタンは、Formで、Javascriptを使用 ・背景色や文字色を次へ・前へボタンをクリックする度に表示させる

    • ベストアンサー
    • PHP
  • ビルダー10にてリンク

    ビルダーでリンクに少しとまどっています。 メニューをクリックした際に、 インラインフレームの中や、表の中に、リンク対象のページを表示しているのですが、 (メニューのBBSをクリックした場合、 インラインフレームの中にBBSが表示されます。) BBS以外にページの上や、下にある、バナーなどの画像も更新したいとおもっているのですが、そういうことはできるのでしょうか? メニューをクリックして、ページそのものを更新するような設定ではなくてもできる方法があれば教えてください。ひとつの動作で2つ以上の指示がだせればいいのですが。。。。 よろしくお願い致します

  • ページング

    JSPでページング(よくある次へ・前へっていうリンクのやつです。1ページに最大10件まで表示)をしたいのですが、よくわかりません。ネットで検索したのですが見つからず・・。どなたかご教授願えませんでしょうか?

    • ベストアンサー
    • Java
  • ページング機能の作成

    1ページに9件表示のページング機能をつけたいのですが、 インターネットで色々調べても一向に分かりません。 下記のようなコードだと、 $result = mysql_query("SELECT count(*) as count FROM quotes WHERE active='Yes'"); echo count($result); 数字の 1 しか表示されません。 例として、下記のような感じで2種類(#1と#2)のページング機能を作成したいのですが・・。 #1 < 前のページ | Pages 1 of 5 | 次のページ > 説明: 前のページ、次のページのリンクをクリックすると、そのページに移動する。 Pages 1 of 5 は、全体のページ数のどのページを現在表示しているか。 例えば、全体のページ数が6ページで、そのうちの現在2ページ目を表示しているのであれば、 Pages 2 of 6 と表示される。 #2 ページへ移動: 「」(GO ボタン) 説明: 「」はフォームのテキストフィールドで、その中に移動したいページの数字を入力して GOボタンをクリックすると、そのページへ移動する。 GETを使用するとか、SESSIONを使用するとか、どっちが良いのかも分かりません。 サンプルソースとかありませんか? DBはMySQLです。 初心者ですみません。 何方か教えて頂けると大変助かります。 宜しく御願いします。

    • 締切済み
    • PHP
  • PHPの変数値をリンクさせたい

    現在、PHP・MySQL・HTMLにてWebサイトを開発しています。 純粋なPHPで記述されたファイルがあり、その中にURL(例えば、BBSのアドレス)が変数に格納されています。そのURL先にジャンプさせたいのですが、どのように記述すれば良いのでしょうか?現在は「require」にてリンクさせていますが、これではページ自体は表示されるのですが、リンク先のページにあるリンク"新規投稿"や"検索"といった文字列をクリックしても「404 Page not found」となり表示されません。おそらくLocalのキャッシュを見ているのでは無いとか思われます。 PHPの初心者のため基本が出来てないのですが、ご教授頂ければ嬉しいです。

    • ベストアンサー
    • PHP
  • ページング機能の実装について@PHP+MySQL

    ページング機能の実装について 【PHP+MySQL】 表示させる要素が多いものでは数万件あり、 たとえば1ページあたりの表示を10件とすると数千ページになります。 実現したい機能は ------------------------------------------------- ◆10ページ以内に収まる件数なら全ページをリンク表示。 [ 1 2 3 4 5 6 7 8 9 10 ] ◆上記以外の場合では↓これと同じくする。 http://tutorials.ajaxmasters.com/pagination-demo/ ◆上記paginationで [...] に当たるページが100ページ以上ある 場合は中間のページをリンク表示。 [ 1 2 ... 135 ... 271 272 273 274 275 ... 612 ... 1499 1500 ] ------------------------------------------------- を考えています。 質問ですが、 1.このようなものを容易に実装できるようなライブラリ等を ご存知の方いらっしゃいましたらご教示ください。 2.上に書いた jquery の pagination は、まだ試してないのですが、 これは数万件のレコードをクライアント側で抱え込んで クライアント側のスクリプトでページングするものでしょうか? もしそうであると件数と容量が大きいので都合悪いかなと思いまして。 総ページ数(或いは総件数)と 1ページあたりの表示件数と クリックされた要求ページを postで持ってページをクリックする度にsqlで最低限の情報を引き出し表示しようと考えています。 上の質問についてと、もしくはもっと効率的な方法があるという方いらっしゃいましたらご教授願います。 宜しくお願い致します。

    • ベストアンサー
    • PHP

専門家に質問してみよう