立项背景和目标:
为巩固PHP+MySQL全栈开发技能,独立设计并实现一个完整的动态博客系统。目标是具备用户管理、文章发布、评论互动等核心功能,模拟真实Web应用场景。
核心功能模块:
1. 用户模块:注册、登录(验证码防刷)、Session登录态保持。
2. 文章模块:发布、编辑、删除,列表分页展示。
3. 评论模块:用户登录后可对文章发表评论,评论按时间倒序排列。
4. 安全防护:输出时使用htmlspecialchars防XSS,密码md5加密。
业务流程:
游客可浏览文章列表及详情;注册/登录后可发表文章、编辑删除自己的文章,并参与评论。管理员(admin)具备所有管理权限
整体架构与设计思路:
采用PHP原生 + MySQL的传统Web架构,代码按功能模块划分:doAction.php作为统一入口(根据a参数分发请求);Conn/conn.php封装数据库连接;前端HTML/CSS手工编写,无第三方框架。
负责模块与结果:
本人独立完成全部前后端开发及数据库设计。
· 设计了tb_user、tb_article、tb_comment三张表,并实现关联查询。
· 文章列表实现按时间倒序显示,单篇文章支持评论及XSS过滤。
· 注册/登录功能包含验证码校验及密码加密存储。
· 项目代码量约2000行,已部署在本地小皮面板(Apache+PHP+MySQL),运行稳定。
遇到的难点与解决方案:
· 难点1:评论后页面刷新但评论不显示 → 原因:跳转前header之前有输出,改用exit终止脚本解决。
· 难点2:Session跨页面丢失 → 排查发现session_start()未在每个页面开头调用,统一添加后解决。
· 难点3:SQL注入风险 → 虽然当前使用拼接,但已计划改用mysqli_prepare预处理语句加强安全。