phpでデータリスト作成
php+PostgreSQLでデータのリスト作成をしています。
DB内にあるデータを条件に合うデータを30件ずつ表示させ、ページ切替をしています。
10ページあると、ページ切替のリンクが、
1~10まで全て表示されます。
これを5ページ目まで+次ページ
前ページ 6 7 8 9 10 が表示
どのようにすればよいでしょうか?
よろしくお願い致します。
現時点でのソースです。
**************************************************DB接続後
$sql = "select count(*) from entry_user";
$result = pg_query($sql)
or die("Failed to execute SQL\n");
$row = pg_fetch_result($result,0,0);
$ln = 30;
if ($row%$ln == 0){ //表示する件数(MAX)
$pn = floor($row / $ln); }
else{
$pn = floor($row / $ln)+1;
}
pg_free_result($result);
$data = "entry_id,entry_time,company,dept,sei,mei,post1,post2,pref,address2,address3,email,entry_flag";
$sort_key = "entry_id"; //ソート対象フィールド
$sort ="desc"; //ソート desc:降順
$sql1 = "select $data from entry_user order by $sort_key $sort limit $ln offset " . ($pnn-1)*$ln ; //SELECT文
$result1 = pg_query($sql1)
or die("Failed to execute SQL\n");
$row1 = pg_num_rows($result1);
for ($i = 0; $i < $row1; $i++){
$table[$i] = pg_fetch_row($result1,$i);
}
一覧表示後(省略)
//ここからページ切替作成
for ($n = 1;$n<$pn+1;$n++){
if($pn != 1){
if($n != $pnn){
print(" <a href=list01.php?pnn=" . $n . ">");
print($n . "</a> \n");
}
else{
// ページ数が、現在表示しているページと同じで有ればリンクなし
print($n . " \n");
}}
else{
print("1\n");
}}
お礼
希望通りの答えでした。ありがとうございます。