写一个主页的留言网页,留言过后能保存
时间: 2023-12-15 09:03:13 浏览: 30
好的,为您提供一个简单的主页留言的网页示例。这个留言板使用了 PHP 和 MySQL 数据库来保存留言信息。
首先,您需要创建一个名为 "messages" 的数据库和一个名为 "messages_table" 的表来保存留言。下面是创建表的 SQL 语句:
```sql
CREATE TABLE messages_table (
id INT(11) NOT NULL AUTO_INCREMENT,
name VARCHAR(255) NOT NULL,
email VARCHAR(255) NOT NULL,
message TEXT NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
```
接下来,您需要创建一个名为 "index.php" 的文件来显示留言列表和留言表单。下面是示例代码:
```php
<?php
// 连接数据库
$db_host = 'localhost';
$db_name = 'messages';
$db_user = 'root';
$db_pass = '';
$conn = mysqli_connect($db_host, $db_user, $db_pass, $db_name);
if (!$conn) {
die('连接数据库失败:' . mysqli_connect_error());
}
// 处理留言表单提交
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];
$sql = "INSERT INTO messages_table (name, email, message) VALUES ('$name', '$email', '$message')";
mysqli_query($conn, $sql);
header('Location: index.php');
exit;
}
// 查询留言列表
$sql = 'SELECT * FROM messages_table ORDER BY created_at DESC';
$result = mysqli_query($conn, $sql);
// 显示留言列表和留言表单
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>留言板</title>
</head>
<body>
<h1>留言板</h1>
<h2>留言列表</h2>
<ul>
<?php while ($row = mysqli_fetch_assoc($result)): ?>
<li>
<p><?php echo $row['name']; ?>(<?php echo $row['email']; ?>)</p>
<p><?php echo $row['message']; ?></p>
<p><?php echo $row['created_at']; ?></p>
</li>
<?php endwhile; ?>
</ul>
<h2>留言表单</h2>
<form method="post">
<label>姓名:</label>
<input type="text" name="name" required>
<br>
<label>邮箱:</label>
<input type="email" name="email" required>
<br>
<label>留言:</label>
<textarea name="message" required></textarea>
<br>
<button type="submit">提交留言</button>
</form>
</body>
</html>
```
这个留言板非常简单,只有一个留言列表和一个留言表单。当用户提交留言时,它会将留言存储到数据库中,并且将用户重定向回主页。当用户访问主页时,它会查询数据库中的留言并显示它们。
请注意,这个留言板仅用于示例目的,没有进行任何安全性和错误处理,您需要根据自己的需求进行适当的修改和改进。