怎么用php做留言板
时间 : 2023-03-31 11:55:01声明: : 文章内容来自网络,不保证准确性,请自行甄别信息有效性
制作留言板通常需要以下步骤:
1. 创建一个数据库,用于存储留言的信息。
2. 创建一个表格,用于存储留言的各种信息,例如留言人的名字、邮箱、留言内容、留言时间等等。
3. 创建一个界面,允许用户查看已有留言和提交新留言。
4. 编写相应的代码,实现上述功能。
下面是一个简单的实现留言板的例子:
1. 创建数据库和表格
在 MySQL 中创建一个名为 guestbook 的数据库,然后创建一个名为 messages 的表格,该表格包含以下字段:
- id:主键,自增长的数字;
- name:留言人的名字;
- email:留言人的邮箱;
- message:留言内容;
- created_at:留言的时间,使用 MySQL 的 datetime 格式存储。
CREATE DATABASE `guestbook`;
USE `guestbook`;
CREATE TABLE `messages` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(255) NOT NULL,
`email` varchar(255) NOT NULL,
`message` text NOT NULL,
`created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
2. 创建留言界面和提交页面
在界面上,我们需要提供一个表单,允许用户输入留言内容。提交页面将用户输入的信息存储到数据库中。
留言界面:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>留言板</title>
</head>
<body>
<h1>留言板</h1>
<h2>已有留言</h2>
<?php
// 显示已有留言
$link = mysqli_connect("localhost", "root", "password", "guestbook") or die("连接失败");
$query = "SELECT * FROM messages ORDER BY created_at DESC";
$result = mysqli_query($link, $query) or die("查询失败");
while ($row = mysqli_fetch_assoc($result)) {
echo "<p><strong>{$row['name']}:</strong> {$row['message']}
";}
mysqli_free_result($result);
mysqli_close($link);
?>
<h2>添加留言</h2>
<form method="post" action="submit.php">
<label>姓名:</label>
<input type="text" name="name" required><br>
<label>邮箱:</label>
<input type="email" name="email" required><br>
<label>留言:</label>
<textarea name="message" rows="4" required></textarea><br>
<input type="submit" value="提交">
</form>
</body>
</html>
提交页面:
<?php
$link = mysqli_connect("localhost", "root", "password", "guestbook") or die("连接失败");
$name = mysqli_real_escape_string($link, $_POST['name']);
$email = mysqli_real_escape_string($link, $_POST['email']);
$message = mysqli_real_escape_string($link, $_POST['message']);
$query = "INSERT INTO messages (name, email, message) VALUES ('$name', '$email', '$message')";
mysqli_query($link, $query) or die("添加失败");
mysqli_close($link);
header("Location: index.php");
?>
3. 编写相应的代码
在留言界面中,我们通过 MySQLi 函数连接数据库,并且查询 messages 表格中的所有数据,然后使用 while 循环遍历每一条留言,并将其显示在页面上。在添加新留言时,我们将使用 SQL 插入语句,将用户输入的信息插入到 messages 表格中。
在提交页面中,我们使用 $_POST 数组获取用户的输入,并且使用 mysqli_real_escape_string 函数,将数据进行过滤和转义,以防止 SQL 注入攻击。然后,我们使用 SQL 插入语句将数据存储到数据库中,并使用 header 函数将页面重定向回留言界面。
以上是一个简单的实现留言板的例子,适合初学者。实际上,真正的留言板还需要更多的功能和安全措施,如用户身份验证、分页、删除留言等等。
好的,下面是使用PHP创建留言板的步骤:
步骤一:创建数据库
在MySQL中创建一个数据库,以及存储用户名、密码和主题的数据表。在本例中,我们使用了以下查询语句来创建表:
CREATE TABLE message_board (
id int(11) NOT NULL AUTO_INCREMENT,
name varchar(255) NOT NULL,
password varchar(255) NOT NULL,
title varchar(255) NOT NULL,
message text NOT NULL,
post_date datetime NOT NULL,
PRIMARY KEY (id)
);
步骤二:创建HTML表单
创建包含以下字段的HTML表单:
- 姓名
- 密码
- 主题
- 留言
步骤三:创建PHP脚本
将以下PHP代码插入到HTML表单的“action”属性中:
<?php
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
$name = $_POST['name'];
$password = $_POST['password'];
$title = $_POST['title'];
$message = $_POST['message'];
$post_date = date('Y-m-d H:i:s');
$servername = "localhost";
$db_username = "root";
$db_password = "your_password";
$dbname = "message_board";
$conn = mysqli_connect($servername, $db_username, $db_password, $dbname);
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
$sql = "INSERT INTO message_board (name, password, title, message, post_date) VALUES ('$name', '$password', '$title', '$message', '$post_date')";
if (mysqli_query($conn, $sql)) {
echo "Your message has been posted successfully.";
} else {
echo "Error: " . $sql . "<br>" . mysqli_error($conn);
}
mysqli_close($conn);
}
?>
*注意:在此代码中,请更改$servername、$db_username、$db_password和$dbname为您的MySQL数据库的真实信息。
步骤四:创建PHP脚本以显示留言
创建一个PHP脚本来显示留言列表。此脚本应该从数据库中检索所有留言,并将它们以表单的形式输出。
>?php
$servername = "localhost";
$db_username = "root";
$db_password = "your_password";
$dbname = "message_board";
$conn = mysqli_connect($servername, $db_username, $db_password, $dbname);
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
$sql = "SELECT name, title, message, post_date FROM message_board ORDER BY post_date DESC";
$result = mysqli_query($conn, $sql);
if (mysqli_num_rows($result) > 0) {
while($row = mysqli_fetch_assoc($result)) {
echo "<div class='message'>";
echo "<p class='name'>" . $row['name'] . "</p>";
echo "<p class='title'>" . $row['title'] . "</p>";
echo "<p class='message'>" . $row['message'] . "</p>";
echo "<p class='post_date'>" . $row['post_date'] . "</p>";
echo "</div>";
}
} else {
echo "No messages posted yet.";
}
mysqli_close($conn);
?>
步骤五:创建CSS样式表
创建一个CSS样式表来修饰留言列表和表单。
.message {
margin-bottom: 20px;
padding: 10px;
border: 1px solid #ccc;
}
.name {
font-weight: bold;
}
.title {
font-style: italic;
}
.message {
margin-top: 10px;
}
.post_date {
font-size: 0.8em;
color: #999;
}
步骤六:将上述代码组合到一个文件中,保存为PHP文件
将HTML表单、PHP脚本(步骤三和步骤四)、CSS样式表组合到一个文件中,保存为PHP文件。现在您已准备好在Web浏览器中运行该文件,添加留言,并查看留言列表。
总结
上述步骤为您介绍了如何使用PHP创建一个简单的留言板。注意,在实际的Web应用程序中,您需要对用户提交的数据进行一些数据验证和安全性检查,防止恶意注入和未经授权的访问。
上一篇
php收索栏条件怎么写
下一篇
php怎么添加下拉框
https/SSL证书广告优选IDC>>
推荐主题模板更多>>
推荐文章