message_list.php
来自「php模块设计。。。里面的模块很有学习价值」· PHP 代码 · 共 126 行
PHP
126 行
<?
include("up.htm");
// 导入两个数据库元件 BEGIN
include("db_conn.php");
include("db_func.php");
// 导入两个数据库元件 END
// 取出留言数据并依发布时间递减排序的 SQL 语句
$SQLStr = "SELECT * FROM message ORDER BY m_time DESC";
$res = db_query($SQLStr); // 执行 SQL 命令
?>
<table width="750" border="0" align="center" cellpadding="0" cellspacing="1">
<tr bgcolor="#0066CC">
<td width="290" align="center">
<font color="#FFFFFF">留言主题</font>
</td>
<td width="300" align="center">
<font color="#FFFFFF">留言内容</font>
</td>
<td width="60">
<font color="#FFFFFF">留言人</font>
</td>
<td width="100">
<font color="#FFFFFF">留言时间</font>
</td>
</tr>
<?
if (db_num_rows($res)>0) // 若表中有数据
{
$num = db_num_rows($res); // 取得数据笔数
$check = $p+10; // 每页抓取 10 笔数据
// 呈现留言列表的字段内容 BEGIN
for ($i=0;$i<=$num;$i++) // 用来呈现多笔留言数据的循环
{
$row = db_fetch_array($res);
// 选取第 $p 笔到 $check 笔数据
if ($i>=$p && $i<$check)
{
// 利用是否被整除来判断字段的背景颜色
if ($i%2 == 0)
echo "<tr bgcolor='#DDDDDD'>";
else
echo "<tr>";
// 判断 m_title 字段内字符串值是否超过 15 字符
if (strlen($row['m_title'])>15)
{
echo "<td width='280'><a href='message_show.php?m_id=".$row['m_id']."'>";
echo substr($row['m_title'],0,30) . "...</a></td>";
}
else
{
echo "<td width='280'><a href='message_show.php?m_id=".$row['m_id']."'>";
echo $row['m_title'] . "</a></td>";
}
// 判断 m_content 字段内字符串值是否有包含 <br> 字符串
if (stristr($row['m_content'],"<br>"))
{
echo "<td width='300'><a href='message_show.php?m_id=".$row['m_id']."'>";
echo substr($row['m_content'], 0, 0 - strlen(strstr($row['m_content'],"<br>"))) . "...</a></td>";
}
else
{
echo "<td width='300'><a href='message_show.php?m_id=".$row['m_id']."'>";
echo $row['m_content'] . "</a></td>";
}
echo "<td width='60' align='center'><a href='mailto:". $row['m_mail'] . "'>" . $row['m_user'] . "</a></td>";
// 仅选取 m_time 字段内 16 个字符的数据
echo "<td width='130' align='center'>" . substr($row['m_time'],0,16) . "</td>";
echo "</tr>";
$j = $i+1;
}
}
// 呈现留言列表的字段内容 END
}
?>
</table>
<br>
<table width="406" border="0" align="center">
<tr>
<td align="center">
<!--- 将 p 值设为 0, 让模块从第一笔数据开始抓取 ---->
<a href="message_list.php?p=0">第一页</a>
</td>
<td align="center">
<?
if ($p>9) // 判断是否有上一页
{
$last = (floor($j/10)*10)-10;
echo "<a href='message_list.php?p=$last'>上一页</a>";
}
else
echo "上一页";
?>
</td>
<td align="center">
<?
if ($i>9 and $num>$check) // 判断是否有下一页
echo "<a href='message_list.php?p=$j'>下一页</a>";
else
echo "下一页";
?>
</td>
<td align="center">
<?
if ($i>9) // 判断目前呈现的笔数之后是否还有页面
{
// 取得最后一页的第一笔数据
$final = floor($num/10)*10;
echo "<a href='message_list.php?p=$final'>最后一页</a>";
}
else
echo "最后一页";
?>
</td>
</tr>
</table>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?