| 檔案 | 用途 |
|---|---|
| config.php | 資料庫連線設定、管理員帳密 |
| mysql.txt | 資料表建立腳本 |
| index.php | 留言列表首頁(含分頁) |
| addnote.php | 新增留言表單與處理 |
| delnote.php | 後台刪除留言管理 |
CREATE TABLE notebook (
name CHAR(6), -- 留言者姓名
email VARCHAR(35), -- Email
time CHAR(30), -- 留言時間字串
face CHAR(2), -- 頭像編號 1-64
ip VARCHAR(16), -- 留言者 IP
title VARCHAR(255), -- 標題
nnote TEXT -- 留言內容
);
<?php
$db = mysql_connect("localhost", "root");
mysql_select_db("test", $db);
$username = "demo"; // 管理員帳號
$password = "demo"; // 管理員密碼
?>
<?php
include("config.php");
// 1. 取得總筆數
$result = mysql_query("SELECT * FROM notebook", $db);
$max = mysql_num_rows($result); // 總留言數
// 2. 分頁參數計算
$page = isset($page) ? $page : 1;
$per_page = 10;
$p = ceil($max / $per_page); // 總頁數
$low = $per_page * ($page - 1); // 起始位移
$x = ($page == $p && $max % $per_page) ? $max % $per_page : $per_page;
if ($max == 0) $x = 0;
// 3. 依時間倒序撈取當頁資料
$result = mysql_query(
"SELECT * FROM notebook ORDER BY time DESC LIMIT $low, $x", $db);
?>
<!-- HTML 版面輸出 -->
<table width="95%" border="1" cellspacing="0" cellpadding="0" align="center">
<tr>
<td>
<?php for ($i = 0; $i < $x; $i++) { ?>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr bgcolor="#eeeeee">
<td width="10%"><img src="image/face/icon<?=mysql_result($result,$i,'face')?>.gif" width="32" height="32"></td>
<td width="16%">留言人:<?=mysql_result($result,$i,'name')?></td>
<td width="41%">發表於:<?=mysql_result($result,$i,'time')?></td>
<td width="12%"><a href="mailto:<?=mysql_result($result,$i,'email')?>"><img src="image/email.gif"></a></td>
<td width="21%"><img src="image/ip.gif"> <?=mysql_result($result,$i,'ip')?></td>
</tr>
<tr><td colspan="5" class="purple10">標題:<?=mysql_result($result,$i,'title')?></td></tr>
<tr bgcolor="#ffffff"><td colspan="5" class="black9">留言內容:<?=mysql_result($result,$i,'nnote')?></td></tr>
</table>
<?php } ?>
</td>
</tr>
</table>
<!-- 分頁導航 -->
<?php
for ($n = 1; $n <= $p; $n++) {
echo "<a href='index.php?page=$n'>$n</a> ";
}
mysql_close($db);
?>
.blue9, .black9, .purple10, .white12)完整程式碼請參考原始內容。下一篇將詳細說明 addnote.php 與 delnote.php 的實作細節。