PHP实现小项目
以下是一个简单的PHP小项目实现方案,以创建一个留言板系统为例:
环境准备
确保已安装PHP环境(如XAMPP/WAMP/MAMP)和MySQL数据库。项目目录结构建议:
/project
/includes
config.php
functions.php
/templates
header.php
footer.php
index.php
add_message.php
数据库配置
在config.php中设置数据库连接:
<?php
define('DB_HOST', 'localhost');
define('DB_USER', 'root');
define('DB_PASSWORD', '');
define('DB_NAME', 'message_board');
$conn = new mysqli(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
?>
创建数据表
执行SQL创建留言表:

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
);
核心功能实现
在functions.php中添加基础功能:
function getAllMessages() {
global $conn;
$sql = "SELECT * FROM messages ORDER BY created_at DESC";
$result = $conn->query($sql);
return $result->fetch_all(MYSQLI_ASSOC);
}
function addMessage($name, $email, $content) {
global $conn;
$stmt = $conn->prepare("INSERT INTO messages (name, email, content) VALUES (?, ?, ?)");
$stmt->bind_param("sss", $name, $email, $content);
return $stmt->execute();
}
页面模板
header.php基础模板:

<!DOCTYPE html>
<html>
<head>
<title>PHP留言板</title>
<style>
body { font-family: Arial; max-width: 800px; margin: 0 auto; }
.message { border-bottom: 1px solid #eee; padding: 10px; }
</style>
</head>
<body>
<h1>留言板</h1>
主页面展示
index.php显示留言列表:
<?php
require_once 'includes/config.php';
require_once 'includes/functions.php';
require_once 'templates/header.php';
$messages = getAllMessages();
foreach ($messages as $message) {
echo "<div class='message'>";
echo "<h3>{$message['name']}</h3>";
echo "<p>{$message['content']}</p>";
echo "<small>{$message['created_at']}</small>";
echo "</div>";
}
require_once 'templates/footer.php';
?>
添加留言功能
add_message.php处理表单提交:
<?php
require_once 'includes/config.php';
require_once 'includes/functions.php';
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
$name = htmlspecialchars($_POST['name']);
$email = htmlspecialchars($_POST['email']);
$content = htmlspecialchars($_POST['content']);
if (addMessage($name, $email, $content)) {
header("Location: index.php");
} else {
echo "留言提交失败";
}
}
require_once 'templates/header.php';
?>
<form method="POST" action="add_message.php">
<input type="text" name="name" placeholder="姓名" required>
<input type="email" name="email" placeholder="邮箱">
<textarea name="content" placeholder="留言内容" required></textarea>
<button type="submit">提交</button>
</form>
<?php require_once 'templates/footer.php'; ?>
安全增强
在config.php中添加基础安全防护:
// 防止XSS攻击
function sanitizeInput($data) {
return htmlspecialchars(strip_tags(trim($data)));
}
// 防止SQL注入
function prepareQuery($sql, $params = []) {
global $conn;
$stmt = $conn->prepare($sql);
if (!empty($params)) {
$types = str_repeat('s', count($params));
$stmt->bind_param($types, ...$params);
}
return $stmt;
}
这个项目包含了PHP开发的基本要素:数据库操作、表单处理、模板分离和安全防护。可根据需求扩展用户认证、分页功能或富文本编辑等特性。






