php即时聊天数据库设计入门经典教程_SpeedPHP学习教程第三篇——实战留言本之数据库设计及前奏(原创连载四)...

本章让我们使用sp框架来制作一个简单的留言本程序(为什么选择这个,主要是他最简单,同时也可以体现speedphp功能,个人觉得简单才是美,也能更快的理解~),

利用实例来学习程序开发是非常有效的。同时,我们也可以体会一下实际网络项目的开发流程。

留言本例子下载,将会在以后提供给大家下载~

首先我们来看看,留言本的需求,也就是我们的程序将要实现什么功能:

1. 访问者可以查看留言首页(也就是留言列表,利用speedphp自带的进行分页)。

2. 访问者可以查看单一条留言的详细内容。

3. 访问者可以进行留言。

4.可以对留言的内容进行编辑和删除(暂时没有涉及权限问题)

5.可以回复留言

6.生成html静态文件

直接贴图了

(留言板我们主要是学习,我没有做美化,大家将就着看吧~~,重要的是大家可以学到东西)

此图请见安徽php社区:http://bbs.hfphp.org/thread-36-1-1.html  复制好麻烦的,哎。。

看截图大家可以看到,我们需要三个字段,一个留言者的名字,留言的标题,留言的内容,

同时,http://bbs.hfphp.org/每个留言有一个留言ID,此外,回复与留言字段都是放在一张表里面的,所以,我们需要一个区分标志字段,

综上,我们主要需要五个字段就够了,数据库设计如下~

代码

CREATETABLE`guestbook` (

`id`int(11)NOTNULLAUTO_INCREMENT,

`title`varchar(50) ,

`contents`varchar(200) ,

`name`varchar(20) ,

`fid`int(6),PRIMARYKEY(`id`),

) ENGINE=MyISAMDEFAULTCHARSET=utf8;

其中,fid为父id,是用来区分回复还是留言的,如果该条记录是的fid为0,则为普通的留言,否则,该记录为回复,fid记录着该回复的留言ID.

数据库建立好了,

至于首页的配置文件,在上一章中已经讲过了,这里就不再重复了,大家自己熟悉下配置文件啊,不要偷懒啊~

http://bbs.hfphp.org/

这里还要说明下,在实际的应用过程中建议大家把配置文件和首页文件分开,比如,我们往往会在根目录下面建立的一个config.php的文件代码如下:

代码

<?phpreturnarray (//数据库'db'=>array('host'=>'localhost','login'=>'root','password'=>'jincon','database'=>'sp_company','prefix'=>'qy_'),//开启smarty'view'=>array('enabled'=>TRUE,'config'=>array('template_dir'=>APP_PATH.'/template','complie_dir'=>APP_PATH.'/tmp','cache_dir'=>APP_PATH.'/tmp','left_delimiter'=>''}>',),),//开启静态化'html'=>array('enabled'=>TRUE,),);?>

在首页index.php文件里,我们可以进行加载配置文件,代码如下:

header("Content-Type:text/html;charset=utf-8");

define("SP_PATH",dirname(__FILE__)."/SpeedPHP");

define("APP_PATH",dirname(__FILE__));

@date_default_timezone_set('PRC');

$spConfig = require(APP_PATH."/config.php");

require SP_PATH.'/SpeedPHP.php';

?>

但是,这里,我们依旧使用上一章讲的配置文件,只是告诉大家要学会灵活运用。

根据我们的设计要求,需要一个控制器,我们这里使用默认的控制器main,那么我们要在controller建立的main.php文件,同时,我们需要几个基本的动作(action)

{functionindex(){//这里是首页}functionshow(){//这里是查看留言内容}functionwrite(){//这里是留言}

}

控制器的框架建立好了,那么下面,我们开始编写模型层(model):

我们还要建立一个guestbook.php放到model目录里面,那是链接数据库所要做的。guestbook.php的代码很简单:

class guestbook extends spModel

{

var $pk = "id"; // 每个留言唯一的标志,可以称为主键

var $table = "guestbook"; // 数据表的名称

}

请注意,全部PHP文件都需要是UTF8编码,数据库也需要UTF8的,要统一下,不然可能会出现乱码的。这里的需要注意的:所有模型必须要继承自spModel,这是speedphp框架的主要核心类。

http://bbs.hfphp.org/

同时还有要注意的是,一个框架都会有自己开发的规范,如果你需要使用这个框架,那么你必须要遵守这个框架的规范,当然现在的框架有很多,也有很多相似的地方,这是因为,框架的开发者往往都习惯遵守一些大家约定成俗的东西,这样的好处自然不言而明,只要有相关框架使用经验的开发人员就可以非常快的使用框架,所以,大家学完speedphp之后就可以快速的学习其他是框架。

大家知道,既然是框架,那么他就会有自己的规范,speedphp的框架要模型里面的类名要和文件名相同,否则会出错,speedphp会爆:路由错误,请检查是否存在该函数。

比如,class guestbook,他的文件名是guestbook.php,还有就是数据库的表名最好也要同名,以后会很方便滴~,而且也比较符合开发规范和有利于养成好的习惯。

下面的教程,我们将开始完善里面的功能,有问题大家及时更贴。。。。。

转载请注明出处,谢谢

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值