下面是一个简易留言板的设计与实现的示例:
创建数据库表格:
CREATE TABLE messages (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(50) NOT NULL,
email VARCHAR(50) NOT NULL,
message TEXT NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
创建一个留言表单(index.php):
<form method="post" action="post_message.php">
<label for="name">姓名:</label>
<input type="text" name="name" id="name" required><br>
<label for="email">邮箱:</label>
<input type="email" name="email" id="email" required><br>
<label for="message">留言:</label><br>
<textarea name="message" id="message" rows="5" required></textarea><br>
<input type="submit" value="提交留言">
</form>
处理留言提交(post_message.php):
<?php
// 连接数据库
$conn = new mysqli('localhost', 'username', 'password', 'database');
// 检查连接
if ($conn->connect_error) {
die("数据库连接失败:" . $conn->connect_error);
}
// 获取表单数据
$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];
// 插入留言到数据库
$sql = "INSERT INTO messages (name, email, message) VALUES ('$name', '$email', '$message')";
if ($conn->query($sql) === TRUE) {
echo "留言提交成功";
} else {
echo "留言提交失败:" . $conn->error;
}
// 关闭数据库连接
$conn->close();
?>
显示留言列表(view_messages.php):
<?php
// 连接数据库
$conn = new mysqli('localhost', 'username', 'password', 'database');
// 检查连接
if ($conn->connect_error) {
die("数据库连接失败:" . $conn->connect_error);
}
// 查询留言列表
$sql = "SELECT * FROM messages ORDER BY created_at DESC";
$result = $conn->query($sql);
// 显示留言列表
if ($result->num_rows > 0) {
while ($row = $result->fetch_assoc()) {
echo "<p><strong>{$row['name']}</strong> ({$row['email']})</p>";
echo "<p>{$row['message']}</p>";
echo "<p>{$row['created_at']}</p>";
echo "<hr>";
}
} else {
echo "暂无留言";
}
// 关闭数据库连接
$conn->close();
?>
以上是一个简易留言板的设计与实现示例。请根据实际情况修改数据库连接信息,并确保代码安全性(如防止 SQL 注入攻击等)。
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站