- 締切済み
PHPでのページ分割について
PHPを勉強中の初心者なのですが、現在PHPとMySQLを用いて、練習用に簡単な掲示板を作っています。 トップ画面には投稿されたもののタイトルが一覧で表示されているのですが、内容が多くなってきたときのために、10件づつ一覧を分割して表示したいと考えております。 ただ、自分で調べてみてもなかなか難しく、今回質問させて頂きました。 ページのリンクの理想としましては、 |先頭のページへ|前のページへ|1|2|3|…|次のページへ|最後のページへ| の様にしたいです。 あつかましいですが、できるだけ詳細に教えて頂ければ幸いです。 どなたか助けてください>< よろしくお願いします。
- munekofu
- お礼率0% (0/5)
- PHP
- 回答数3
- ありがとう数2
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- tany180sx
- ベストアンサー率63% (239/379)
ミスりました。 //前のページ $prev = ($current > 1) ? $current - 1 : null; PEAR_Pagerみたいなスライド型が好きです。 http://pear.php.net/manual/ja/package.html.pager.intro.php
- tany180sx
- ベストアンサー率63% (239/379)
//総件数を取得する $count = query("SELECT COUNT(*) FROM (..)"); //1ページあたりの表示件数 $limit = 10; //現在のページ $current = empty($_GET['page']) ? 1 : $_GET['page']; //最初のページ $first = 1; //最後のページ $last = ($count && $limit) ? @ceil($count / $limit) : null; //前のページ $prev = ($current > 1) > $current - 1 : null; //次のページ $next = ($current < $last) ? $current + 1 : null; //表示する範囲 $queryOffset = ($page) ? $limit * ($page - 1) : 0; $queryLimit = $limit; //リンクを作る if ($first) {} if ($prev) {} if ($next) {} if ($last) {} for ($i = 1; $i <= $last; $i++) {} //動作保証なし
- Mizyu
- ベストアンサー率41% (245/593)
情報が少ないので具体的なコードレベルのアドバイスはできないので、概念だけ。 DBから取得してくる、掲示板の記事を10件ごとに細切れに取得できるようにする。 ページを飛ばすリンクでページ数をGetパラメータで渡してあげる。 例) aaa.php?page=2 aaa.phpの先頭では、Getで渡されたページを受け取る。(無かった場合は1ページ目にする) 例) if(isset($_REQUEST['page'])) $page=$_REQUEST['page']; else $page=1; ※$pageにページ数が入ります。 そのページ数に適応したレコードを表示する。 ちなみに、ページャ付BBSのソースなら探せばどこかにありますので 参考にしてみてはいかがでしょうか。
関連するQ&A
- SQLのデータを分割してブラウザに表示
環境は MYSQL PHP 4.1.3 WIN2000 よく掲示板等のHPで分割して表示しているのをよく見かけます。 ”次の5件表示”とかのやつです。 あれはどういうロジックになっているのでしょうか? 例えば今DBに30件の顧客データがあるのですが、 ブラウザで1ページに10件表示するとして3ページにわたる場合どう作成すればいいのか教えて頂けないでしょうか?
- ベストアンサー
- PHP
- MySQLとPHPで一覧表示させページ分割するには
PHP初心者です。 フォトライブラリを作っているのですが、MySQLからのデータを指定件数表示させることは出来るようになりました。 しかしその後の「次のページ」リンクを作り、クリックされた際に次ページで次の一覧を表示させる方法(ページ生成)がわかりません。 静的ページにしたいので、mod_rewriteを使うとの事がわかったのですが、それを具体的に使う方法がわかりませんでした。 サーバへどのような要求があった際にどのようなページを表示させる、等が出来るようなのですが、実際の静的ページ生成の方法・ソースが発見出来ませんでした。 わかりやすいサイトがございましたら教えてくださいませ。
- 締切済み
- PHP
- PHPで新しいページを作りたい
掲示板をPHPで作ることができたんですけど、 あたらしい投稿があるとその投稿内容を載せるページをPHPを用いて自動的に作られるようにしたいのですけど、そういうことはできるのでしょうか? できるならそのやりかたを教えてください
- 締切済み
- PHP
- csvからphpを使って商品ページを表示させたい?
phpがまったくわからない初心者ですがよろしくお願いします。 CSVファイルにはコード番号、商品名、値段、説明文があるとします。 phpを使って商品ページの一覧を表示させたいと思います。 表示は逆順に表示して、できれば20件ごとに「次へのページ」へリンクと「戻る」のリンクを付けたいのですがどのようにプログラムを書けばいいのでしょうか? ほどんど丸投げ状態ですがよろしくお願いします。
- 締切済み
- PHP
- MYSQL PHPのページ分割表示について教えてください。
MYSQLとPHPで書籍のデーターベースを構築中ですが、ページの分割表示をさせたくて、色々検索していたら「PEAR::Package::Pager を使わずphpでページング処理ができるpager()関数」というもをみつけました。 がっ! 組み込み方が、わからない。 賢者の知恵を拝借できれば、幸いです。 ソースは、こちらのを利用させていただいております。 http://www.daito.ac.jp/~ikeuchi/webdb/webdb_3.html これに、下記のところにある関数を組み込みたいのですが http://ryouchi.seesaa.net/article/45846102.html よろしく、お願いします。
- 締切済み
- MySQL
- 3分割されたページ(8P)へリンクするTOPページを作りたい
ホームページビルダー9です。もともと、あったHPの修正をしています。 もともとあったのは、TOPページが上、下分割で下部が左右に分割されていて、左側がメニューになっています。上部は会社名が常に表示されている状態でメニューの項目(8個)をクリックすると、下部左側の画面だけが変わっていくと言うスタイルになっています。 現在、そのHPにTOPページを追加する作業をしています。もともとあった、左側のメニュー項目を、TOPページにも記して、それぞれのページへのリンクを貼ります。そして、TOPページから入った各ページの左側にも、今までどおりメニューを残したいのです。 TOPページにはフレームは使用しないつもりです。 そんな状態で作っているのですが、TOPページから飛んだときに、左側のメニュー部、上側などが表示されないときが頻繁にあります。特に、今回追加しているリンク先のページに関しては、どうしても左側が表示されません。 左側メニューから飛ぶと、問題ないのですが、TOPページからはいると問題が起きます。 解決方法はあるでしょうか?
- ベストアンサー
- ホームページ作成ソフト
- PHP+MySQLからHTMLページを自動生成?
初めまして、質問させていただきます。 フォーム(PHP)から送信されたデータ(コメントや写真等)を データベースへ(MySQL)と格納し、 その内容を新規HTMLページを自動生成させ表示させることは可能でしょうか? 既存するPHPで動的に内容を表示させることは簡単に出来るのですが、 そうではなくて、ユーザーから投稿された内容を、 自動的に新規ページを作成して表示させるようにしたいと思っています。 分かりやすく言えば、投稿されたデータをテンプレートに当てはめ、 新規ページを生成するまでをサーバー上で自動的に行いたいのです。 できればPHPとMySQLでこれらを行えればと考えているのですが、 無理ならば他のものでもかまいません。 ちなみに、PHPとMySQLはまだまだ初心者です。 DreamWeaverの機能で動作させ、少しいじれる程度です。 どうかアドバイスをお願いいたします。
- ベストアンサー
- PHP
- single.phpについて
始めまして ワードプレスでテーマ作成を行っています。 カテゴリーなしのカスタム投稿ページを作成しており、archive.php、single.phpまでは問題なく表示されるのですが、single.phpからさらにその個別記事の詳細ページを作成したいと思っています。 【理想】 archiveページ ↓ singleページ ↓ singleページのさらに詳細ページ 何か良い方法はございますでしょうか? ご教授いただけると幸いです。よろしくお願いいたします。
- ベストアンサー
- PHP
- 【php+mysql】mysqlのレコードが100件あるとして、それを10件ずつページを分けて表示するには?
たとえばmysqlのレコードが100件あるとして、 それを10件ずつページを分けてphpを使ってページに表示するには どうすればいいのでしょうか? googleの検索結果表示のようなかんじです。
- ベストアンサー
- MySQL