当前位置:首页 > PHP

php 实现留言

2026-02-14 13:36:55PHP

PHP 实现留言功能

要实现一个简单的留言功能,需要创建数据库表、编写表单页面和处理提交数据的 PHP 脚本。以下是具体实现步骤:

数据库表设计

创建一个名为 messages 的表,包含以下字段:

php 实现留言

CREATE TABLE messages (
    id INT AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(50) NOT NULL,
    email VARCHAR(100),
    content TEXT NOT NULL,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

留言表单页面

创建一个 HTML 表单用于提交留言:

php 实现留言

<form action="submit_message.php" method="post">
    <div>
        <label for="name">姓名:</label>
        <input type="text" id="name" name="name" required>
    </div>
    <div>
        <label for="email">邮箱:</label>
        <input type="email" id="email" name="email">
    </div>
    <div>
        <label for="content">留言内容:</label>
        <textarea id="content" name="content" required></textarea>
    </div>
    <button type="submit">提交留言</button>
</form>

处理留言提交

创建 submit_message.php 处理表单提交:

<?php
// 连接数据库
$db = new PDO('mysql:host=localhost;dbname=your_db_name', 'username', 'password');

// 获取表单数据
$name = $_POST['name'];
$email = $_POST['email'] ?? null;
$content = $_POST['content'];

// 插入数据
$stmt = $db->prepare("INSERT INTO messages (name, email, content) VALUES (?, ?, ?)");
$stmt->execute([$name, $email, $content]);

// 重定向回留言页面
header('Location: message_form.php');
exit;
?>

显示留言列表

创建 messages.php 显示所有留言:

<?php
$db = new PDO('mysql:host=localhost;dbname=your_db_name', 'username', 'password');
$messages = $db->query("SELECT * FROM messages ORDER BY created_at DESC")->fetchAll();
?>

<ul>
<?php foreach ($messages as $message): ?>
    <li>
        <h3><?= htmlspecialchars($message['name']) ?></h3>
        <p><?= htmlspecialchars($message['content']) ?></p>
        <small><?= $message['created_at'] ?></small>
    </li>
<?php endforeach; ?>
</ul>

安全注意事项

  1. 使用 htmlspecialchars() 防止 XSS 攻击
  2. 使用预处理语句防止 SQL 注入
  3. 对用户输入进行验证和过滤
  4. 在生产环境中使用 HTTPS

扩展功能

  1. 添加分页功能
  2. 实现管理员回复功能
  3. 添加验证码防止垃圾留言
  4. 实现留言审核机制

标签: 留言php
分享给朋友:

相关文章

php实现文件下载

php实现文件下载

PHP 实现文件下载的方法 使用 header() 函数强制下载 设置正确的 HTTP 头信息,强制浏览器下载文件而不是直接打开。 $file = 'path/to/file.pdf'; if (f…

php实现websocket

php实现websocket

PHP 实现 WebSocket WebSocket 是一种在单个 TCP 连接上进行全双工通信的协议。PHP 可以通过多种方式实现 WebSocket 功能,以下是几种常见的方法: 使用 Ratc…

php 实现跳转

php 实现跳转

PHP 实现页面跳转的方法 在PHP中,实现页面跳转可以通过多种方式完成,以下是几种常用的方法: 使用header函数 header函数是PHP中最常用的跳转方法,通过发送HTTP头部信息实现跳转。…

php 实现面包屑导航

php 实现面包屑导航

实现面包屑导航的方法 面包屑导航(Breadcrumb Navigation)是一种常见的网站导航方式,用于显示用户当前页面的路径。以下是几种在 PHP 中实现面包屑导航的方法。 基于 URL 路径…

php 路由实现的

php 路由实现的

PHP 路由实现方法 基于原生 PHP 实现路由 创建一个简单的路由解析器,通过解析 URL 路径来调用对应的控制器或函数。 // 定义路由表 $routes = [ '/' => '…

php实现多态

php实现多态

多态的概念 多态是面向对象编程的三大特性之一,指同一个方法在不同类中有不同实现方式。PHP通过继承和接口实现多态。 通过继承实现多态 父类定义方法,子类重写该方法实现不同行为: class Ani…