如何在 PbootCMS 中创建留言板表单并调用留言记录?
在 PbootCMS 中搭建留言板分为两大步骤:前端留言提交表单 和 后台留言列表的调用。下面给出可直接使用的完整代码和说明。
一、创建留言提交表单
使用 PbootCMS 内置标签 {pboot:msgaction} 作为表单提交地址,{pboot:checkcode} 生成验证码。表单字段名称(如 contacts、mobile、content)必须与后台留言表字段一致。
以下是一个标准的留言表单 HTML 代码(可复制到模板中):
<form action="{pboot:msgaction}" method="post">
<div class="form-group">
<label>联系人:</label>
<input type="text" name="contacts" required>
</div>
<div class="form-group">
<label>手机:</label>
<input type="text" name="mobile" required>
</div>
<div class="form-group">
<label>内容:</label>
<textarea name="content" rows="5" required></textarea>
</div>
<div class="form-group">
<label>验证码:</label>
<input type="text" name="checkcode" required>
<img src="{pboot:checkcode}" onclick="this.src='{pboot:checkcode}?'+Math.random();" style="cursor:pointer;" title="点击刷新">
</div>
<button type="submit">提交留言</button>
</form>标签说明:
• {pboot:msgaction} – 留言数据接收地址,自动入库。
• {pboot:checkcode} – 验证码图片地址,点击可刷新。
• 若需增加字段(如邮箱),请先在后台“自定义表单”中添加,再在前台增加同名 input。
二、调用留言记录列表
使用 {pboot:message} 标签输出留言,支持分页、隐私保护(手机号中间隐藏)和格式化时间。
以下是调用列表的核心代码:
{pboot:message num=10 page=1}
<div class="message-item">
<p><strong>联系人:</strong>[message:contacts]</p>
<p><strong>手机:</strong>[message:mobile substr=1,3]****[message:mobile substr=8]</p>
<p><strong>内容:</strong>[message:content]</p>
<p><strong>留言时间:</strong>[message:askdate style=Y-m-d H:i]</p>
<p><strong>回复:</strong>[message:recontent]</p>
<p><strong>回复时间:</strong>[message:replydate style=Y-m-d]</p>
</div>
{/pboot:message}参数详解:
• num=10 – 每页显示 10 条。
• page=1 – 开启分页(1 开启,0 关闭)。
• lg=all – 调取所有语言留言(可选)。
• [message:mobile substr=1,3]****[message:mobile substr=8] – 手机号中间四位隐藏。
• style=Y-m-d H:i – 自定义日期格式。
三、分页导航(可选)
若开启分页,在列表循环外部添加以下代码:
<div class="pagination">
{pboot:page}
</div>四、完整整合示例(表单 + 列表)
将以下内容放入模板页面即可(样式可自行调整):
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>留言板</title>
<style>
.form-group { margin-bottom: 15px; }
.form-group input, .form-group textarea { width: 100%; padding: 8px; border: 1px solid #ddd; border-radius: 4px; }
.message-item { border-bottom: 1px solid #eee; padding: 15px 0; }
.pagination { margin-top: 20px; }
</style>
</head>
<body>
<h2>我要留言</h2>
<form action="{pboot:msgaction}" method="post">
<div class="form-group">
<label>联系人:</label>
<input type="text" name="contacts" required>
</div>
<div class="form-group">
<label>手机:</label>
<input type="text" name="mobile" required>
</div>
<div class="form-group">
<label>内容:</label>
<textarea name="content" rows="5" required></textarea>
</div>
<div class="form-group">
<label>验证码:</label>
<input type="text" name="checkcode" required>
<img src="{pboot:checkcode}" onclick="this.src='{pboot:checkcode}?'+Math.random();" style="cursor:pointer;">
</div>
<button type="submit">提交</button>
</form>
<hr>
<h2>历史留言</h2>
{pboot:message num=10 page=1}
<div class="message-item">
<p><strong>联系人:</strong>[message:contacts]</p>
<p><strong>手机:</strong>[message:mobile substr=1,3]****[message:mobile substr=8]</p>
<p><strong>内容:</strong>[message:content]</p>
<p><strong>留言时间:</strong>[message:askdate style=Y-m-d H:i]</p>
<p><strong>回复:</strong>[message:recontent]</p>
</div>
{/pboot:message}
<div class="pagination">{pboot:page}</div>
</body>
</html>注意事项:
• 若留言不显示,检查后台是否有已审核记录,且 num 大于 0。
• 分页标签 {pboot:page} 必须放在 {pboot:message} 循环外部。
• 验证码不显示时检查服务器 GD 库是否开启。
• 所有字段名称大小写敏感,请保持一致。
通过上述代码,您即可快速搭建一个功能完整的 PbootCMS 留言板,便于用户互动和管理员回复。
