用PHP和MySQL实现留言板需三步:建表(含id、nickname、content、created_at字段)、PHP用PDO预处理防SQL注入并htmlspecialchars过滤XSS、前端表单提交+后端查询倒序展示,辅以长度限制与空值校验。
用PHP和MySQL做一个简单留言板,核心就三件事:建数据库表、写后端逻辑、做前端页面。不复杂但容易忽略细节,比如SQL注入防护和基础XSS过滤。
在MySQL中新建一个数据库(比如 message_board),然后执行以下建表语句:
CREATE TABLE messages (
id INT AUTO_INCREMENT PRIMARY KEY,
nickname VARCHAR(50) NOT NULL,
content TEXT NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
注意字段长度要合理,TE
XT类型适合存较长留言;created_at自动记录时间,省得PHP手动写。
接收表单POST数据时,必须过滤和转义。推荐用PDO预处理防止SQL注入:
示例代码片段:
$pdo = new PDO("mysql:host=localhost;dbname=message_board;charset=utf8", $user, $pass);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$stmt = $pdo->prepare("INSERT INTO messages (nickname, content) VALUES (?, ?)");
$stmt->execute([$_POST['nickname'], htmlspecialchars($_POST['content'])]);
从数据库读取并按时间倒序展示:
前端只需一个form提交,下面用while循环把结果echo出来即可,不用框架也能跑得很稳。
上线前至少补上这几点:
基本上就这些。做完能提交、存储、展示,就是一个可用的最小留言系统。