初めまして。
ページング処理で15件ずつで区切って表示したいと思っています。
しかし、次頁を押下しても同じレコードが表示されてしまいます。
$i<=$endlineの部分では$i=0、$endline=15となり次のページにすると$i=14、$endline=29とちゃんとなります。
初心者ながらに色々、試してみたのですが分からず困っています
長いソースで大変恐縮ですがアドバイスを頂きたいと存じます。
よろしくお願い致します。
-----------------------------------------------------------
$maxline = 20;
$page = $HTTP_GET_VARS["page"];
if ($page < 1) {
$page = 1;
}
$startline = ($page - 1) * $maxline;
$endline = $page * $maxline -1;
$sql = "select * from db1 id DESC";
$r = odbc_exec($con, $sql);
$maxpage = ceil(odbc_num_rows($r) / $maxline);
$i=$startline;
while(odbc_fetch_array($r) and $i<=$endline){
$item1 = odbc_result($r, "id");
$item2 = odbc_result($r, "clm1");
?>
<form action="index.php" method="post">
<TR class="old">
<TD align="center">
<TD><?= $item1 ?></TD>
<TD><?= $item2 ?></TD>
</FORM>
<?
}
//$iに1を加算
$i = $i + 1;
}
//現在の頁/最終頁を表示
print("<caption valign='top' align='right'>Page ".$page."/".$maxpage."</caption>");
print("<caption align='bottom'>");
if ($page > 1) {
$i = $page - 1;
print("<a href='page.php?page=".$i ."'>前頁</a>");
}
if ($page <> 1 and $page <> $maxpage) {
print("・");
}
if ($page < $maxpage) {
$i = $page + 1;
print("<a href='page.php?page=".$i ."'>次頁</a>");
}
print("<br>");
for ($i=1;$i<=$maxpage;$i++) {
if ($i==$page){
print("[".$i."]");
} else {
print("<a href='page.php?page=".$i."'>$i</a>");
}
if ($i <> $maxpage) {
print("・");
}
?>