仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1186|回复: 18
打印 上一主题 下一主题

[学习教程] PHP网页编程之基于mysql的bbs设计(一)

[复制链接]
金色的骷髅 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-4 00:05:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
工具程序用来显示 Rasmus Lerdorf 的个人履历,以及统计网页流量。   1。体系架构:
  采取模块化思惟,分为3层:
  a。数据存储层:利用mysql来寄存bbs的一切数据,包含用户信息,
    文章数据,用户函件,用户动静,体系数据(?),关头成绩:
    数据库的计划,是不是用文件来帮助。
  b。体系功效层:完成bbs的根基功效,由多个并列模块构成,向下
    挪用mysql的函数会见数据库,向上,承受处置恳求,将处置的
    了局前往下层,依据恳求类型,前往成败了局和其他数据。并且
    模块高度天真,可以便利的修正增添。包含:
    ** 用户模块,处置用户的注册,根基数据的修正,权限的变更,
     网友信息的查询。
    ** 版面模块,完成文章宣布,文章的读取,文章的删除,文章
     的加标志,读改删权限反省,此模块对数据库的请求最高。
    ** 精髓区模块,包含精髓区的文章,目次的增添,删除,高低移     动
(?)读改删权限反省,目次布局是个中的难点。
    ** 函件模块,包含发新函件,读删函件,信笺标志,新函件的通
     知
    ** 动静模块,包含发送动静,承受动静,新动静告诉,动静回忆,
     动静存函件。
    ** 体系静态模块,包含以后上站人数,以后静态,因为变化频仍,
     此类数据用同享内存完成能够更好。
    ** 聊天模块,双人聊天是不是能自创icq的做法,由两边直接通话,
     但聊天了局存函件能够较费事,同时,为兼容telnet功效,当
     下层办事层为telnet时,增添专门的模块来停止处置。
    ** 聊天室模块,使用同享内存仍是数据库?开房间,外面的权限
     成绩。
     依据需求,还能增添新的功效。例如:举动看板模块,但关于非
    telnet终端,意义好象不大。。。。。
  c。办事层:直接和客户机对话,依据客户机的恳求,挪用功效模块获得
    数据,然后将数据发送回客户端,依据客户真个类型,分离开辟分歧
    的办事模块,而且尽量公道停止笼统,使对分歧的办事层,能共用
    体系功效层的模块。详细包含:
    ++ cq66办事端,接纳原cq66的体例,偏重新计划协定,撑持体系功效
     层的一切功效,但要用专门的客户端法式(cq66),假如能做到向
     下兼容则更好,客户端法式要随办事真个晋级而晋级,用户能够有
     点方便。有需求可以在传输过程当中到场加密功效,相似ssh。
    ++ telnet办事端,采取旧bbs的体例,有些功效不撑持,客户端不必
     晋级,办事器端要保留客户方的形态,并依据客户真个按键来判别
     形态的转移,并由此得出所需的数据,(例如浏览某篇文章),然
     后再向体系功效层恳求数据,然后将数据加以处置(例如加上顶行,
     尾行)然后前往数据,可以在现有的bbsd上修正,可以省去io模块
     的设计但难度较大,除文章方面好一点外,其他对照难改,但从头
     写起太吃力。
    ++ httpd办事端,所需的功效更少,绝对较复杂,原本直接挪用mysql
     数据库也行,直接可以用php,但思索到分层的准绳,建议仍用c编
     cgi的体例完成不知能不克不及在本来的基本上修正呢?估量不可。
  体系的关头和难点:
  a。数据库的设计,mysql撑持大批的table吗?例如几万?每一个
    用户最少一个表,然后每一个版一个表,精髓区的表布局能够更庞杂。
    但应当总会比如今bbs的文件布局明晰一些,效力也高一点吧,排序
    和cache的功效可以信任mysql吧。
  b。mysql中文本字段的巨细限制,限制一篇文章不得大于64k不外分吧,
    并且从效力的角度,将一篇文章以最大2k的块为单元寄存能够更好,
    如许,当telnet用户看文章时,telnet办事器不必每次都查询数据库
    读取几十k的数据,再将个中的某2k传给用户,可部分抵偿数据库字段
    不克不及象文件那样从两头读取一局部。不外如许文章字段数据的办理
    对照庞杂。
2。体系开辟企图:
  先思索用户模块和版面模块,计划好数据布局,应当很轻易和现有bbsd联合
起来的。然后再思索其他模块?。。。。。。。
(//以下有空再写。。。。。先睡觉去。。hmm.........)
3。数据库设计
4。用户模块设计
5。版面模块设计
6。bbsd和cq66办事器端改革
7。初步测试企图 。我先把我自己学习PHP的过程做一下概括:
山那边是海 该用户已被删除
沙发
发表于 2015-2-4 08:48:37 | 只看该作者
作为一个合格的coder 编码的规范是必须,命名方面我推崇“驼峰法”,另外就是自己写的代码最好要带注释,不然时间长了,就算是自己的代码估计看起来都费事,更不用说别人拉。
小魔女 该用户已被删除
板凳
发表于 2015-2-5 15:11:12 | 只看该作者
使用 jquery 等js框架的时候,要随时注意浏览器的更新情况,不然很容易发生框架不能使用。
金色的骷髅 该用户已被删除
地板
 楼主| 发表于 2015-2-12 10:29:54 | 只看该作者
学习php的目的往往是为了开发动态网站,phper就业的要求也涵盖了很多。我大致总结为:精通php和mysql
透明 该用户已被删除
5#
发表于 2015-3-3 01:59:13 | 只看该作者
首先我是坚决反对新手上来就用框架的,因为对底层的东西一点都不了解,造成知识上的真空,会对以后的发展不利。我的观点上手了解下框架就好,代码还是手写。当然啦如果是位别的编程语言的高手的话,这个就另当别论啦。
老尸 该用户已被删除
6#
发表于 2015-3-10 22:49:19 | 只看该作者
首先声明:我是一个菜鸟,是一个初学者。学习了一段php后总是感觉自己没有提高,无奈。经过反思我认为我学习过程中存在很多问题,我改变了学习方法后自我感觉有了明显的进步。
若天明 该用户已被删除
7#
发表于 2015-3-17 12:08:22 | 只看该作者
曾经犯过一个很低级的错误,我在文件命名的时候用了一个横线\\\\\\\'-\\\\\\\' 号,结果找了好几个小时的错误,事实是命名的时候 是不能用横线 \\\\\\\'-\\\\\\\' 的,应该用的是下划线  \\\\\\\'_\\\\\\\' ;
精灵巫婆 该用户已被删除
8#
发表于 2015-3-22 00:42:33 | 只看该作者
最后祝愿,php会给你带来快乐的同时 你也会给他带来快乐。
谁可相欹 该用户已被删除
9#
发表于 2015-3-25 03:14:16 | 只看该作者
有位前辈曾经跟我说过,phper 至少要掌握200个函数 编起程序来才能顺畅点,那些不熟悉的函数记不住也要一拿手册就能找到。所以建议新手们没事就看看php的手册(至少array函数和string函数是要记牢的)。
再现理想 该用户已被删除
10#
发表于 2015-3-26 13:32:03 | 只看该作者
本人接触php时间不长,算是phper中的小菜鸟一只吧。由于刚开始学的时候没有名师指,碰过不少疙瘩,呗很多小问题卡过很久,白白浪费不少宝贵的时间,在次分享一些子的学习的心得。
只想知道 该用户已被删除
11#
发表于 2015-3-29 20:21:27 | 只看该作者
多看优秀程序员编写的代码,仔细理解他们解决问题的方法,对自身有很大的帮助。
灵魂腐蚀 该用户已被删除
12#
发表于 2015-4-15 08:37:27 | 只看该作者
遇到出错的时候,我经常把错误信息直接复制到 google的搜索栏,一般情况都是能搜到结果的,不过有时候会搜出来一大片英文的出来,这时候就得过滤一下,吧中文的弄出来,挨着式方法。
蒙在股里 该用户已被删除
13#
发表于 2015-4-19 04:25:18 | 只看该作者
我还是强烈建议自己搭建php环境。因为在搭建的过程中你会遇到一些问题,通过搜索或是看php手册解决问题后,你会更加深刻的理解它们的工作原理,了解到php配置文件中的一些选项设置。
小女巫 该用户已被删除
14#
发表于 2015-4-24 16:13:34 | 只看该作者
不禁又想起那些说php是草根语言的人,为什么认得差距这么大呢。
admin 该用户已被删除
15#
发表于 2015-5-12 05:53:38 | 只看该作者
找到的的资料很多都是在论坛里的,需要注册,所以我一般没到一个论坛都注册一个id,所有的id都注册成一样的,这样下次再进来的时候就不用重复注册啦。当然有些论坛的某些资料是需要的付费的。
柔情似水 该用户已被删除
16#
发表于 2015-6-14 00:38:34 | 只看该作者
基础有没有对学习php没有太大区别,关键是兴趣。
若相依 该用户已被删除
17#
发表于 2015-6-20 09:10:04 | 只看该作者
多看优秀程序员编写的代码,仔细理解他们解决问题的方法,对自身有很大的帮助。
海妖 该用户已被删除
18#
发表于 2015-6-21 22:47:51 | 只看该作者
我要在声明一下:我是个菜鸟!!我对php这门优秀的语言也是知之甚少。但是我要在这里说一下php在网站开发中最常用的几个功能:
分手快乐 该用户已被删除
19#
发表于 2015-6-22 01:09:30 | 只看该作者
php里的数组为空的时候是不能拿来遍历的;(这个有点低级啊,不过我刚被这个边界问题墨迹了好长一会)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-11-14 13:50

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表