• 締切済み

データを10件ずつ表示させたい

以下のソースでorder.csvを降順に特定の項目($line[6])が存在する時、表示するという処理をしています。(確認済み) 今、全件表示される状態なのですが、特定の項目($line[6])が存在する時 10件表示ずつに拡張したいのですが、アドバイスお願いします。 また、10件以上データが存在する時「次へ」ボタン「前へ」ボタンをつけるにはどうしたらよいでしょうか。 $AddressData = LoadTextFile( "./log/order.csv", "UTF-8", "SJIS" ); if ( $AddressData == false ) { exit; } else { // データを後ろから読む for ( $i = count($AddressData) - 1; $i >= 0; $i-- ) { $line = explode( ",", $AddressData[ $i ] ); // 一行の構成が$line[0],$line[0],$line[1],$line[2],$line[3],$line[4],$line[5],$line[6]となって、$line[6]が存在するとき if($line[6]){ echo( $line[ 2 ] ); echo " "; echo( $line[ 6 ] )."<br>"; } } } よろしくお願いします。

みんなの回答

  • moon_night
  • ベストアンサー率32% (598/1831)
回答No.1

動作テストをしてないので動かないかもしれません。 # 表示する件数 $view_page = 10; # 全件数 $all = count($AddressData); # 表示ページ設定 $st_p = $_GET['page'] * $view_page; # ページ設定 if (!$_GET['page']) { $_GET['page']) = 0; } if (ceil($all/$view_page) > $_GET{'page']) { $next_p = "<a href=\"script.php?page=" .($_GET['page'] + 1 ) ."\">\n"; } else { $next_p = ''; } if ($_GET['page'] != '0') { $back_p = "<a href=\"script.php?page=" .($_GET['page'] - 1 ) ."\">\n"; } # カウント用 $p_count = $all - 1 - $st_p; for ( $i = $p_count; $i >= $p_count-$view_page; $i-- ) { $line = explode( ",", $AddressData[ $i ] ); // 一行の構成が$line[0],$line[0],$line[1],$line[2],$line[3],$line[4],$line[5],$line[6]となって、$line[6]が存在するとき if($line[6]){ echo( $line[ 2 ] ); echo " "; echo( $line[ 6 ] )."<br>"; } } # ページ変更リンク echo $back_p; echo $next_p;

関連するQ&A