1、需求分析

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

2、解决方案

2.1 论坛设计

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,   #父文章的postidposter CHAR(20) NOT NULL,    #该文章的作者title CHAR(20) NOT NULL, #该文章的标题children INT DEFAULT 0 NOT NULL, #该文章是否有回复,0无,1有,默认0area 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,  #每篇文章的唯一的IDmessage text #该文章的正文
);GRANT SELECT,INSERT,UPDATE,DELETE
ON discussion.*
TO discussion@localhost IDENTIFIED BY 'password';

4、实现源代码

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

一个简单的PHP Web论坛相关推荐

  1. 一个简单的Java web服务器实现

    前言 一个简单的Java web服务器实现,比较简单,基于java.net.Socket和java.net.ServerSocket实现: 程序执行步骤 创建一个ServerSocket对象: 调用S ...

  2. 02 创建一个简单的Python Web程序应用

    第二章 创建第一个Python Web程序应用 目的:制作一个简单的欢迎网站,熟悉Python Web的基本开发流程以及掌握Django的基本结构和常用命令. Python Web的基本开发流程可以概 ...

  3. 一个简单的静态web服务器实现

    看完tomcat原理后,想自己用java仿一个简单的tomcat,先实现一个静态的web服务器.需要的技术有java网络编程(tcp/ip协议.http协议.socket等基础知识) 源码下载链接ht ...

  4. 一个简单的静态web服务器

    用python的socket写的一个简单多进程服务器 #-*-coding:utf-8-*- import re from socket import * from multiprocessing i ...

  5. java web容器_java-实现一个简单的java Web容器

    技术栈 java.net.Socket java.net.ServerSocket 执行流程 创建一个ServerSocket对象: 调用ServerSocket对象的accept方法,等待连接,连接 ...

  6. 转:一个简单的基于WEB的QTP自动化测试框架-SAFFRON

    来源: http://www.itestware.com/ctest/index.php?option=com_content&view=article&id=62:webqtp-sa ...

  7. html简单购物车,用jsp实现一个简单的购物车web应用系统。

    1. 在自己建立的WEB工程中,建立包shopcart.dto,在相应的包中添加类Product.java ,ShopCart.java 1./*类Product */ 2.3.package sho ...

  8. go : go gin mysql 创建一个简单的后端web服务

    吃别人吃不了的苦,忍别人受不了的气,付出比别人更多的,才会享受的比别人更多 !!! 具体代码在: https://gitee.com/hjx_RuGuoYunZhiDao/strom-huang-go ...

  9. 搭建一个简单vue项目web项目全过程(完整步骤)

    一.安装node环境 1.下载地址为:Node.js 2.检查是否安装成功:如果输出版本号,说明我们安装node环境成功 2.检查是否安装成功:如果输出版本号,说明我们安装node环境成功 3.为了提 ...

最新文章

  1. MyBatis点滴积累
  2. BZOJ 2154 [国家集训队]Crash的数字表格 / JZPTAB(莫比乌斯反演,经典好题)(Luogu P1829)
  3. UTXO Commitment有望彻底解决大区块存储问题
  4. Pod详解-生命周期-钩子函数
  5. math.js:灵活强大的JavaScript数学库
  6. 解读大型网站系统架构的演化
  7. 算法六之直接插入排序
  8. 除了给予人权,欧洲议会还要让机器人纳税
  9. javascript 函数式编程(1)
  10. android 沙盒 ios,iOS中的沙盒机制
  11. Web的未来:语义网
  12. debian远程桌面设置
  13. 动易和php,国内主流CMS对比之织梦内容管理系统VS动易
  14. Java从入门到精通(视频教程+源码)
  15. 什么是java框架结构_Java框架概述
  16. Kiwi Syslog日志服务器的安装及配置使用
  17. Word/excel/df文档转图片返回前端
  18. 倒序输出字符串,如输入i love you,则输出you love i
  19. 基于MC9S12G使用编码器(控制)输出PWM
  20. 使用自己的ISO文件制作PE

热门文章

  1. /etc/passwd文件+/etc/shadow文件(图解+字段详解)
  2. springmvc 登录互斥,实现避免单账户被多个地方同时登录
  3. 如何选择开源许可证?
  4. 安卓开发设置全屏隐藏标题栏
  5. 【Liunx】manjaro 配置vscode python开发环境
  6. charles源码分析
  7. 杭电oj 1000 c++ 版本
  8. Android 应用基础知识和应用组件
  9. php weize_docs.html
  10. python读取xlsx文件年月日变成数字_python转化excel数字日期为标准日期操作