Web.fla

主食は、html/css/php/javascript(jQuery) デザートはactionscript!WEBに関することをメモってくサイト

*

【PHP】ページ送り機能|連番で振っていくバージョン

      2015/02/20

phpの案件でデータを10件ずつ表示されて次のデータを表示するときに「次」「前」とかページ送りにするけど、そうではなくて「1,2,3,4」と連番をふっていくような仕組みを作成したときのメモ。
ただ自分で試してみた簡易バージョン。CSVで管理した場合なのでデータベースの場合はプログラムが変わってくる

ページ送りするときに必要な変数

ページ送りにするときに、必要な変数を用意する。最大データ表示数を格納する変数など

といった具合に変数を用意しておく

ページ送りに必要なロジック部分を作成する

今回はcsvからデータを取り出してるが、全体の流れを下記のような流れで割り出す

  1. クリックした番号を$idに格納する
  2. csvから配列$dataに一行分のデータを抜き出しそれをまとめた多次元配列$datalistに格納する
  3. $totalにcount()関数で配列総数を格納 
  4. $totalを$maxで割った整数が$pageNumとなる
  5. クリックされた番号に$maxをかけた数値を割り出し$startに格納
  6. $startに$maxを足すことで$endを割りだし格納する

ページ送りのナビゲーションを作成

$pageNumさえ割り出せれば、ナビゲーションの作成は簡単なので説明不要です。
クリックデータは$_GETで送信させます。クリックしたidは配列インデックスが0から始まるが表示は1番目から表示させます。(配列のインデックスが0番目から始まるので・・)

データを表示させる

csvからデータを5つずつ表示させるロジック。ポイントは$startと$endがポイントになります。
上記で$startと$endの割り出し方を書きましたが、両方の変数を元にfor文で$datalistの配列のインデックス番号をずらすことでデータ表示させてます。

動作確認

 - php

     

Message

  関連記事

【PHP】sessionの完全な破棄

よくあるログインすると「~~様こんにちは」みたいなログイン情報を保持して破棄する …

PHPでフォームから入力された文字列が全角・半角スペースのみの場合のチェック

検索すれば、沢山でてくると思うけど、よくフォームで入力した値をphpでチェック( …

【PHP】phpでファイルのアップロード

ファイルのアップロードのシーンって結構ありそうなの定型文のようにメモっておこう。 …

【PHP】preg_replaceで最初と最後の/を取り除いてみた!

文字列置換というとereg_replaceとかpreg_replaceで正規表現 …

【PHP】phpによるcsvの複数行の削除方法が知りたい。

さて、最近ちょいちょいPHPに興味を再び持ち始めています。なぜかサーバーサイドで …

【PHP】PHPでリロード対策をして二重投稿を防止しよう

phpでフォームとか作ってデータを送信できた!!!って喜んでるのもつかの間(笑い …

no image
hidden タグで配列を送信するには?

フォームなどでチェックボックスでチェックを入れた値は「$_post」で受け取れる …

【PHP】 scandirによるフォルダ内のファイル一覧を表示する

フォルダにあるファイルを取得して表示する処理、例えば画像一覧を表示するどありそう …

【jquery】$.postを利用してCSVを読み込む

jQueryの$.postを利用してCSVを読み込む案件がありそうだったので、今 …

no image
mysqlの文字化け対策

フォームから入力した値をmysqlのテーブルに登録するときに日本語が化けてしまっ …