北京传智播客教育
php进阶
讲师:韩顺平
******@.cn
主讲韩顺平
php进阶-内容介绍
(一) 如何在php中显示图片
(二) 分页技术详解
(三) 雇员管理系统功能改进
(四) 网站框架的改进
主讲韩顺平
在php中显示图片
这个非常简单:
在你的,比如imgs).:
<img src=“./imgs/图片名”/> 即可
应用实例
在管理界面显示左边的图片.
让我们动手实践以下吧
主讲韩顺平
分页技术
分页是任何一个网站(bbs、网上商城、blog)都会使用到的技术,因此学习b/s开发就一定要掌握该技术.
主讲韩顺平
分页技术
我们先讲讲分页的算法:
我们需要定义四个变量,它们有各自的用处
pageSize : 每页显示多少条记录 pageNow : 希望显示第几页
pageCount : 一共有多少页 rowCount : 共有多少条记录
说明:
pageSize 是指定的
pageNow 是用户选择的
rowCount 是从表中查询得到的
pageCount 是计算出来的该计算式为
if(rowCount%pageSize==0){
pageCount=rowCount/pageSize;
}else{
pageCount=rowCount/pageSize+1;
}
举例说明:
有用户表共 9条记录:
rowCount=9;
每页显示3条记录: pageSize=3;
那么根据我们的算法:
pageCount=3 ,刚好不多不少
如果每页显示4条记录
pageSize=4 那么
pageCount=3 , 那么最后一页
只有1条记录
所以,不管怎样都是正确的
主讲韩顺平
分页技术
mysql :
select * from 表名 where 条件 limit 从第几条取,
取出几条记录(pageSize)
sql server :
select top 取出几条(pageSize) 字段列表 from 表名 where 字段
not in (select top (pageNow-1)*pageSize 字段 from 表名)
以我们前面的employee表为例,显示第2页,该查询语句就是:
select top 3 * from employee where userId not in
(select top 3 userId from employee)
oracle :
select * from (select t1.*,rownum rn from (select * from 表名 where 条件) t1
where rownum<=取到第几条[pageNow*pageSize])
where rn>=从第几条取[(pageNow-1)*pageSize+1];
主讲韩顺平
分页技术
■应用实例
分页是非常有趣的,我们在employeeList页面增加显示用户信息,并进行分页显示。
好!当登录用户的级别是管理员,.
let’s try it now!!
主讲韩顺平
雇员管理系统功能改进
■雇员管理系统()
在上一讲的雇员管理系统中添加如下功能:
新增加的功能:
1: 如何在管理界面显示一张图片
2: 如何对雇员信息列表分页
知识点 1: 如何测试sql语句的效率
2: 分页算法的介绍和实现
主讲韩顺平
网站框架的改进-问题分析
留心的朋友可能看到了程序设计是有不合理的地方:这种方法将界面和业务逻辑放在一起(model1模式),存在以下问题:
1: ,它们的逻辑相似,有重复代码
2: 整个框架没有清晰的层次关系,显得非常乱.
3:代码一点也不优雅, 可读性差,可维护性差.
主讲韩顺平
Model1模式—介绍
这里我们必须提到,在软件开发中有几个重要的开发模式:
Model1 模式 2. 分层模式(界面、业务逻辑分离)
3. mvc模式(zf)
Model 1的最重要的特点就是没有分层的概念,也就是说吧界面显示
和业务逻辑的处理放在一个文件中来完成。
Modle1模式的缺点:
1. 表现层和业务逻辑层混合在一起(乱!)
2. 在开发过程中,不利于多人的协同开发
3. 不利于后期的维护
Model1模式的优点:
1. 简单,开发速度比较快。
2. 比较适合开发小的项目。
传智播客php培训17 来自淘豆网m.daumloan.com转载请标明出处.