PHP教程之基于mysql的bbs设计(二)
从刚开始练习的PHP基础语法练习,到PHP语言在WEB中的应用,再到实际的项目开发,如留言版,相册系统,中小型公司网站系统,以及期间做过的有关团队合作的小游戏,让我受益匪浅,学到了很多。 3。数据库设计关头仍是mysql的效力成绩,公道分派mysql的内存,出格是table cache的
巨细。别的,当体系俄然失落电呢?mysql是不是robust?
table的名字设计,采取一名前缀标明类型,全体用小写暗示(?),例如:
体系的数据库,以s为前导,如用户表:suser(sUSER 呢?),详细以下:
s :体系表,suser,sclass
m :用户函件表,msysop,mdrangon
w :用户动静表,wsysop,wdrangon
a :版面索引表,alinux,acampus
b :版面文章表,blinux,bcampus
c :特别分类版面表,cnewboard
i :精髓区索引表,ilinux,ilinux01,icampus,icampus04
j :精髓区文章表,jlinux,jcampus,
别的,是利用字串仍是数字作为标识呢?例如,一个叫sysop的帐号,其
id是1,他的信的表是msysop仍是m00001呢?一样,一个叫campus的版,对应的
代码是5,则这个版的文章的表名是bcampus仍是b00005呢?能够用字串会轻易
了解,查错吧。
用户信息表:suser
usernum int unique, // 独一标识符,最多30000个帐号,会不会太少了?
userid char primary key, // 排序的关头字,id,全小写。
passwd char, // 暗码,寄存加密后的密文。
realid char, // 实践id,巨细写夹杂。
usernamechar, // 用户的泥称
userlevellongint,// 64种权限?
numloginsint,
numpostsint,
firstlogin time,
lastlogintime,
staytimetime, /* 总共逗留工夫 */
lasthostchar,
email varchar,
address varchar,
// 还需求其他数据吗?是不是需求留出必定的保存值,今后alter table来
// 增添新的字段时,效力若何?
版面分类表:sclass
classnumint unique, // 分类标识
classid char,// 分类的英文id:computer
classnamevarchar,// 分类的中文描写:电脑世界
classtable char,// 特别分类对应的版面表
// 普通来讲,每一个版面只属于一个分类,关于特别分类,例如拳头版块,
// 新版面,可以用专门的表来描写
版面表:sboard
boardnumint unique, // 版面的标识(需求吗?)
boardid char, // 版面的英文名
boardnamevarchar,// 版面的中文名
boardclass char, // 版面所属分类
boardsysop varchar,// 斑竹名单
boardposts int, // 版面的文章数
boardlevel int, // 版面的读写权限
indextable char, // 版面临应的索引表的称号:aboardid?
texttablechar, // 版面临应的文章表称号:bboardid?
// 最初两项有无需要呈现,是不是可以作为必定对应关系,仍是答应
// 呈现更大的天真性?别的版面的巨细写成绩是不是可以直接默许
// 只开首字母大写,
特别分类版面表:snewboard, sstarboard
boardid char,// 版面的id
// 如许的表有需要吗?
版面索引表:acampus,alinux,afootball。。。。。。
id int, // 文章序数,要手动调剂????
markchar, // 文章标志,m,g,b,d。。。。
titlevarchar,// 文章题目
writer char, // 文章作者id
posttime time, // 宣布工夫
textnumlongint, // 对应的编号???不调剂
版面文章表
textnum longint,// 文章编号?
textwordtext, // 文章内容?
// 有需要将索引和文章内容分隔吗?从效力上看,何况lazy flush
// 是必定的。删除也是先做个标志。
// 用户中的版面文章是不是未读的数据对照繁,是不是应当再建一堆的表
// 才干完成呢?
// 投票功效暂不思索。。。。
毕业设计作品自己个人还是觉得比较满意的,尽管有些功能考虑的不全面,也没有很好的实现。 多看优秀程序员编写的代码,仔细理解他们解决问题的方法,对自身有很大的帮助。 对于懒惰的朋友,我推荐php的集成环境xampp或者是wamp。这两个软件安装方便,使用简单。但是我还是强烈建议自己动手搭建开发环境。 兴趣是最好的老师,百度是最好的词典。 建数据库表的时候,int型要输入长度的,其实是个摆设的输入几位都没影响的,只要大于4就行,囧。 基础有没有对学习php没有太大区别,关键是兴趣。 当然这种网站的会员费就几十块钱。 首推的搜索引擎当然是Google大神,其次我比较喜欢 百度知道。不过搜出来的结果往往都是 大家copy来copy去的,运气的的概率很大。 php是动态网站开发的优秀语言,在学习的时候万万不能冒进。在系统的学习前,我认为不应该只是追求实现某种效果,因为即使你复制他人的代码调试成功,实现了你所期望的效果,你也不了解其中的原理。 在学习的过程中不能怕麻烦,不能有懒惰的思想。学习php首先应该搭建一个lamp环境或者是wamp环境。这是学习php开发的根本。虽然网络上有很多集成的环境,安装很方便,使用起来也很稳定、 说点我烦的低级错误吧,曾经有次插入mysql的时间 弄了300年结果老报错,其实mysql的时间是有限制的,大概是到203X年具体的记不清啦,囧。 建数据库表的时候,int型要输入长度的,其实是个摆设的输入几位都没影响的,只要大于4就行,囧。 php是动态网站开发的优秀语言,在学习的时候万万不能冒进。在系统的学习前,我认为不应该只是追求实现某种效果,因为即使你复制他人的代码调试成功,实现了你所期望的效果,你也不了解其中的原理。 为了以后维护的方便最好是代码上都加上注释,“予人方便,自己方便”。此外开发文档什么的最好都弄齐全。我觉得这是程序员必备的素质。虽然会消耗点很多的时间。但是确实是非常有必要的。 最后介绍一个代码出错,但是老找不到错误方法,就是 go to wc (囧),出去换换气没准回来就找到错误啦。 实践是检验自己会不会的真理。 当然这种网站的会员费就几十块钱。 再就是混迹于论坛啦,咱们的phpchina的论坛就很强大,提出的问题一般都是有达人去解答的,以前的帖子也要多看看也能学到不少前辈们的经验。别的不错的论坛例如php100,javaeye也是很不错的。 因为blog这样的可以让你接触更多要学的知识,可以接触用到类,模板,js ,ajax 刚开始安装php的时候,我图了个省事,把php的扩展全都打开啦(就是把php.ini 那一片 extension 前面的冒号全去掉啦),这样自然有好处,以后不用再需要什么功能再来打开。
页:
[1]