ページングについて
<?php
/* データベース関連のデータをインクルード */
/* 1ページあたりの表示件数を設定 */
$PAGESIZE = 5;
/* MySQLに接続 */
/* データベースを選択 */
if (isset($_GET["page"])) {
$page = $_GET["page"];
$tcnt = $_GET["tcnt"];
}
/* 初めて呼ばれた時、総件数を取得 */
if (!isset($page)) {
$sql = "select count(*) as cnt from board";
$rst = mysql_query($sql, $con);
$col = mysql_fetch_array($rst);
mysql_free_result($rst);
$tcnt = $col["cnt"];
/* 現在のページを初期設定 */
$page = 1;
}
/* 総ページ数 */
$totalpage = ceil($tcnt / $PAGESIZE);
$pagehead = "<b>$tcnt</b>件が投稿されています。<br>";
$pagehead .= "<b>[" . ($PAGESIZE * ($page - 1) + 1) . "-";
/* 最終ページより前のページ */
if ($page < $totalpage) {
$pagehead .= ($PAGESIZE * $page) . "]</b>を表示";
}
/* 最終ページ */
else {
$pagehead .= "$tcnt]</b>を表示";
}
/* 1ページ分だけ抽出するSQL文の組み立て */
$sql = "select * from board order by no desc limit ";
$sql .= $PAGESIZE * ($page - 1) . ", $PAGESIZE";
/* 結果セットを取得 */
/* 結果セットからデータの読み込み */
/* 結果セットを破棄して接続を閉じる */
/* ページのナビゲーションを追加 */
if ($page > 1) {
$page2 = $page - 1;
$body .= "<a href = 'board.php?page=$page2&tcnt=$tcnt'>" .
"<img src = 'img/arrow_left.gif' border = '0'><font class = 'brown'>前の<b> $PAGESIZE 件</b></a> </font>";
}
if ($totalpage > 1 and $page < $totalpage) {
$page3 = $page + 1;
$body .= "<a href = 'board.php?page=$page3&tcnt=$tcnt'><font class = 'brown'>次の<b> $PAGESIZE 件</b>";
$body .= "<img src = 'img/arrow_right.gif' border = '0'></a></font>";
}
?>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="../Top/design.css">
</head>
<body>
<?= $pagehead ?>
<?= $body ?>
</body>
</html>
長くて申し訳ありません。
コメントであらわした内容で、掲示板の投稿一覧を作成しています。
投稿一覧をページングして、表示させようとしているのですが・・・。
何度も次ページのリンク(ページのナビゲーション)を押さなければ、遷移しないのです・・・・。
どうか、わかる方ご教示願えないでしょうか。宜しくお願い致します。
お礼
ご回答ありがとうございます。参考にさせていただきます。