php制作留言板成品
时间: 2024-12-30 11:31:19 浏览: 8
### 完整的 PHP 留言板实例
#### 数据库连接配置
为了创建一个完整的 PHP 留言板,首先需要建立数据库连接。通常会有一个 `config.php` 文件来保存这些设置。
```php
<?php
// config.php
$servername = "localhost";
$username = "root"; // MySQL 用户名
$password = ""; // MySQL 密码
$dbname = "message_board";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
?>
```
#### 表单提交处理逻辑
当用户填写表单并点击提交按钮时,服务器端脚本负责接收数据并将之存入数据库中[^3]。
```php
<?php
include 'config.php';
$msg = isset($_REQUEST['msg']) ? $_REQUEST['msg'] : '';
$username = isset($_REQUEST['username']) ? $_REQUEST['username'] : '';
$sex = isset($_REQUEST['sex']) ? $_REQUEST['sex'] : '';
$sql = "INSERT INTO msgboard (username, sex, msg) VALUES ('$username', '$sex', '$msg')";
$result = mysql_query($sql);
if (!$result){
echo "Error inserting record!";
} else {
header('Location:index.php');
}
$conn->close();
?>
```
请注意,在实际开发环境中应当使用预处理语句防止 SQL 注入攻击,并且应该对输入的数据做进一步验证和清理。
#### 显示留言列表
通过查询数据库中的记录,可以构建 HTML 页面显示所有的留言条目[^1]。
```php
<?php
include 'config.php';
$sql = "SELECT * FROM msgboard ORDER BY id DESC LIMIT 0 , 30 ";
$query = mysql_query($sql);
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Message Board</title>
</head>
<body>
<h2>Messages:</h2>
<ul>
<?php while($row=mysql_fetch_array($query)){ ?>
<li><?php echo htmlspecialchars($row["username"]); ?> says:<?php echo nl2br(htmlspecialchars($row["msg"])); ?></li>
<?php } ?>
</ul>
<!-- 发布新消息 -->
<form action="submit.php" method="post">
<p><label>Name:<input type="text" name="username"></label></p>
<p><label>Sex:<select name="sex"><option value="male">Male</option><option value="female">Female</option></select></label></p>
<p><textarea rows="4" cols="50" name="msg"></textarea></p>
<button type="submit">Submit Message</button>
</form>
</body>
</html>
```
此代码片段展示了如何从数据库读取留言并通过循环结构将其渲染成网页的一部分。同时提供了一个简单的表单让用户能够发布新的留言。
阅读全文