欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

一个简单的PHP Web论坛

程序员文章站 2022-04-04 16:53:44
...
1、需求分析

  • 通过发表文章开始新的讨论话题
  • 发表文章来回复已有的文章
  • 查看发表的文章
  • 查看论坛中的交谈话题
  • 查看文章之间的关系,也就是,查看哪篇文章是另外文章的回复

2、解决方案

2.1 论坛设计

一个简单的PHP Web论坛

一个简单的PHP Web论坛

一个简单的PHP Web论坛

2.2 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脚本


3、实现数据库

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';

4、实现源代码

下载地址:一个简单的PHP Web论坛

以上就介绍了一个简单的PHP Web论坛,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。