当前位置: 代码迷 >> 综合 >> PHP学习 mvc 学习
  详细解决方案

PHP学习 mvc 学习

热度:83   发布时间:2024-01-21 16:25:23.0
今天的讲的知识不是很多 

首先是一个分页代码.不想细研究,以前在java中没有遇到过的情况可能就是他的FenYe类,不仅储存了参数 返回的结果(含有生产的html)也放到里面了./

将来会用到的 网上也一定有代码 

思想:

1.首先考虑要解决的问题

2.提供的条件

3.需要返回的值,

4.开始研究方法的实现

<?php//这是一个用于保存分页信息的类class FenyePage{public $pageSize=6; public $res_array;  //这是显示数据public $rowCount;   //这是从数据库中获取public $pageNow=1;  //用户指定的public $pageCount;  //这个是计算得到的public $navigate;   //分页导航}?>
传入分页传出 之后吧结果也放入fenye对象
//第二种使用封装的方式完成的分页(业务逻辑到这里)function getFenyePage($fenyePage){$sql1="select * from emp  limit ".($fenyePage->pageNow-1)*$fenyePage->pageSize.",".$fenyePage->pageSize;$sql2="select count(id) from emp";//创建一个SqlHelper对象实例$sqlHelper=new SqlHelper();$sqlHelper->exectue_dql_fenye($sql1,$sql2,$fenyePage);$sqlHelper->close_connect();}


//考虑分页情况的查询,这是一个比较通用的并体现oop编程思想的代码//$sql1="select * from where 表名 limit 0,6";//$sql2="select count(id) from 表名"public function exectue_dql_fenye($sql1,$sql2,$fenyePage){//这里我们查询了要分页显示的数据$res=mysql_query($sql1,$this->conn) or die(mysql_error());//$res=>array()$arr=array();//把$res转移到$arrwhile($row=mysql_fetch_assoc($res)){$arr[]=$row;}mysql_free_result($res);$res2=mysql_query($sql2,$this->conn) or die(mysql_error());if($row=mysql_fetch_row($res2)){$fenyePage->pageCount=ceil($row[0]/$fenyePage->pageSize);$fenyePage->rowCount=$row[0];}mysql_free_result($res2);//把导航信息也封装到fenyePage对象中$navigate="";if ($fenyePage->pageNow>1){$prePage=$fenyePage->pageNow-1;$navigate="<a href='empList.php?pageNow=$prePage'>上一页</a> ";}if($fenyePage->pageNow<$fenyePage->pageCount){$nextPage=$fenyePage->pageNow+1;$navigate.="<a href='empList.php?pageNow=$nextPage'>下一页</a> ";}//把$arr赋给$fenyePage$fenyePage->res_array=$arr;$fenyePage->navigate=$navigate;}

在界面中只是调用

echo $fenyePage->navigate;

就可以显示123456的分页界面了



然后是mvc思想的c讲解 说的还是不错的



最后,在写完了model后应该使用测试用例等进行测试,测试完成后就可以方便使用了.这也是我以前在做的,



  相关解决方案