本文实例讲述了cakephp2.X多表联合查询join及使用分页查询的方法。分享给大家供大家参考,具体如下:

格式化参数:
public function getconditions($data){
$this->loadModel("Cm.LoginHistory");
$conditions = array();
foreach ($data as $key=>$val){
if($key=='start_date'){
$conditions['LoginHistory.logintime >=']=trim($val);
}elseif ($key=='end_date'){
$conditions['LoginHistory.logouttime <=']=trim($val);
}elseif ($key=='selectvsoftid' and $val !=''){
$conditions['LoginHistory.LOGINSUBSYSTEM LIKE']='%'.trim($val).'%';
}elseif ($key=='username' and $val !=''){
$conditions['LoginHistory.USERNAME LIKE']='%'.trim($val).'%';
}elseif ($key=='vdevicename' and $val !=''){
$conditions['LoginHistory.WINDOWNAME LIKE']='%'.trim($val).'%';
}elseif ($key=='selectvsoftid' and $val !=''){
$conditions['LoginHistory.PHDEVICENAME LIKE']='%'.trim($val).'%';
}
}
return $conditions;
}
分页查询:
$fields = array('LoginHistory.windowname','LoginHistory.loginsubsystem','VirtualDevice.PHDEVICEID','LoginHistory.userid', 'VirtualDevice.SYSTYPEID','UserInfo.USERNAME','"SUM"(LoginHistory.LOGOUTTIME-LoginHistory.LOGINTIME) moument','UserInfo.USERNAME','DeviceInfo.DEVICENAME');
$group=array('LoginHistory.windowname', 'LoginHistory.loginsubsystem', 'LoginHistory.userid','UserInfo.USERNAME','DeviceInfo.DEVICENAME','VirtualDevice.SYSTYPEID','VirtualDevice.PHDEVICEID');
$this->paginate = array('conditions'=>$conditions,'fields'=>$fields,'group'=>$group,'limit'=>9,'joins' => array(
array(
'alias' => 'UserInfo',
'table' => 'SMM_USERINFO',
'type' => 'LEFT',
'conditions' => ' LoginHistory.USERID=UserInfo.USERID ',
),
array(
'alias' => 'VirtualDevice',
'table' => 'ET_NMVIRTUALDEVICEINFO',
'type' => 'LEFT',
'conditions' => ' LoginHistory.WINDOWNAME=VirtualDevice.DEVICENAME ',
),
array(
'alias' => 'DeviceInfo',
'table' => 'ET_NMDEVICEINFO',
'type' => 'LEFT',
'conditions' => ' VirtualDevice.PHDEVICEID=DeviceInfo.DEVICEID ',
),
));
$LoginHistory = $this->paginate('LoginHistory');
$this->set('loginhistory',$LoginHistory);
更多关于php框架相关内容感兴趣的读者可查看本站专题:《php优秀开发框架总结》、《codeigniter入门教程》、《ThinkPHP入门教程》、《Zend FrameWork框架入门教程》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。
# cakephp
# 多表联合
# 分页
# 查询
# PHP中CakePHP添加数据库实例方法
# CakePHP框架Model函数定义方法示例
# CakePHP框架Model关联对象用法分析
# cakephp常见知识点汇总
# CakePHP框架Session设置方法分析
# Cakephp 执行主要流程
# 初学CAKEPHP 基础教程
# CakePHP的安装的简单方法
# 程序设计
# 相关内容
# 感兴趣
# 给大家
# 更多关于
# 所述
# 面向对象
# 操作技巧
# 讲述了
# trim
# logintime
# end_date
# elseif
# key
# val
# start_date
# foreach
# USERNAME
相关文章:
网站企业制作流程,用什么语言做企业网站比较好?
如何将凡科建站内容保存为本地文件?
广州网站建站公司选择指南:建站流程与SEO优化关键词解析
如何通过万网虚拟主机快速搭建网站?
大连网站设计制作招聘信息,大连投诉网站有哪些?
网站好制作吗知乎,网站开发好学吗?有什么技巧?
赚钱网站制作软件,建一个网站怎样才能赚钱?是如何盈利的?
宝塔建站后网页无法访问如何解决?
如何在阿里云ECS服务器部署织梦CMS网站?
香港服务器建站指南:免备案优势与SEO优化技巧全解析
建站之星免费版是否永久可用?
高防服务器如何保障网站安全无虞?
c++23 std::expected怎么用 c++优雅处理函数错误返回【详解】
c++怎么用jemalloc c++替换默认内存分配器【性能】
c++怎么使用类型萃取type_traits_c++ 模板元编程类型判断【方法】
如何在阿里云虚拟机上搭建网站?步骤解析与避坑指南
如何自定义建站之星模板颜色并下载新样式?
深圳防火门网站制作公司,深圳中天明防火门怎么编码?
淘宝制作网站有哪些,淘宝网官网主页?
如何快速生成凡客建站的专业级图册?
ui设计制作网站有哪些,手机UI设计网址吗?
详解jQuery停止动画——stop()方法的使用
制作网站哪家好,cc、.co、.cm哪个域名更适合做网站?
c++ stringstream用法详解_c++字符串与数字转换利器
建站之星ASP如何实现CMS高效搭建与安全管理?
如何用wdcp快速搭建高效网站?
简单实现Android验证码
建站主机系统SEO优化与智能配置核心关键词操作指南
网站微信制作软件,如何制作微信链接?
如何在宝塔面板创建新站点?
如何用已有域名快速搭建网站?
建站主机数据库如何配置才能提升网站性能?
平台云上自助建站如何快速打造专业网站?
建站之星安装提示数据库无法连接如何解决?
如何通过商城自助建站源码实现零基础高效建站?
如何通过网站建站时间优化SEO与用户体验?
西安制作网站公司有哪些,西安货运司机用的最多的app或者网站是什么?
极客网站有哪些,DoNews、36氪、爱范儿、虎嗅、雷锋网、极客公园这些互联网媒体网站有什么差异?
如何实现建站之星域名转发设置?
如何快速生成高效建站系统源代码?
如何通过山东自助建站平台快速注册域名?
公司门户网站制作公司有哪些,怎样使用wordpress制作一个企业网站?
深入理解Android中的xmlns:tools属性
如何快速打造个性化非模板自助建站?
建站之星CMS建站配置指南:模板选择与SEO优化技巧
建站主机是否等同于虚拟主机?
建站之星安装需要哪些步骤及注意事项?
免费网站制作appp,免费制作app哪个平台好?
如何快速查询网址的建站时间与历史轨迹?
如何用低价快速搭建高质量网站?
*请认真填写需求信息,我们会在24小时内与您取得联系。