php如何做一个论坛
1、需求分析
通过发表文章开始新的讨论话题
发表文章来回复已有的文章
查看发表的文章
查看论坛中的交谈话题
查看文章之间的关系,也就是,查看哪篇文章是另外文章的回复
2、解决方案
论坛设计
3、Web论坛应用程序中用到的文件
文件名称
类型
描述
index.php
应用程序
用户进入站点看到的主页。包括该站点中所有文章的可扩展及删除的列表
new_post.php
应用程序
用来发表新文章的表单
store_new_post.php
应用程序
保存已输入到new_post.php表单中的文章
view_post.php
应用程序
显示一篇单独的文章及回复它的文章的列表
treenode_class.php
函数库
包含节点类,我们将要用它来显示文章的继承关系
include_fns.php
函数库
将该程序中用到的所有其他函数库放在一起(其他库类型文件在这里列出)
data_valid_fns.php
函数库
数据检验函数
db_fns.php
函数库
数据库连接函数
discussion_fns.php
函数库
处理存储及重新获得发表的文章的函数
output_fns.php
函数库
输出HTML的函数
create_database.sql
SQL
建立该程序所需要数据库的SQL脚本
4、实现数据库
[sql] view plain copy
CREATE DATABASE discussion; #创建论坛数据库
USE discussion; #使用论坛数据库
CREATE TABLE header #创建数据头表
(
parent INT NOT NULL, #父文章的postid
poster CHAR(20) NOT NULL, #该文章的作者
title CHAR(20) NOT NULL, #该文章的标题
children INT DEFAULT 0 NOT NULL, #该文章是否有回复,0无,1有,默认0
area INT DEFAULT 1 NOT NULL, #备用于扩展时,实现多个论坛的多个版块
posted datetime NOT NULL, #该文章的发表的时间和日期
postid INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY #每篇文章的唯一的ID
);
CREATE TABLE body #创建正文表
(
postid INT UNSIGNED NOT NULL PRIMARY KEY, #每篇文章的唯一的ID
message text #该文章的正文
);
GRANT SELECT,INSERT,UPDATE,DELETE
ON discussion.*
TO discussion@localhost IDENTIFIED BY 'password';
5、实现源代码