yii 日期插件
——controller
public $defaultAction = "income";
public function actionIncome(){
$model = new StatsSpace;
$model->user_id = Yii::app()->user->id;
//日期
$idate = isset($_POST['Income']['idate']) ? $_POST['Income']['idate'] : "";
if(!$idate){
$endDate = date("Y-m-d");
$idate = date('m/d/Y',time()-24*3600*5)." - ".date("m/d/Y");
$_POST['Income']['idate']=$idate;
//$idate = date('m/d/Y',strtotime('2012-08-08'))." - ".date("m/d/Y");
}
$model->idate = $idate;
//计算month_income用
$model->idate_from_controller = $idate;
//tabs
$sumall = $model->getSumAllIncome();
//$dataProvider 数据提供者
$dataProvider = $model->getDataProviderIncome($idate);
$this->render("income", array(
'model'=>$model, //$model = new StatsSpace;
'sumall'=>$sumall, //tabs 根据广告位置,算总收入
'idate'=>$idate, //$model->idate_from_controller $model->idate 日期
'dataProvider'=>$dataProvider, //getDataProviderIncome($idate)【下面表格的具体数值】;
));
}
--------------model【data——where】
/**
* tabs相关
*/
public function getSumAll(){
$idate = $this->idate;
if($idate){
$tmp = explode(' - ', $idate);
$startDate = strtotime($tmp[0]);
$d1 = date('Y-m-d', $startDate);
$endDate = strtotime($tmp[1]);
$d2 = date('Y-m-d', $endDate);
}else{
$startDate = strtotime(date("Y-m-d",time()-24*3600*5));
$endDate = strtotime(date("Y-m-d"));
$d1 = date('Y-m-d', $startDate);
$d2 = date('Y-m-d', $endDate);
}
$sql = "SELECT
SUM(totalIncome) AS totalIncomeSum,
SUM(cpcIncome) AS cpcIncomeSum,
SUM(cpmIncome) AS cpmIncomeSum,
monthIncome AS monthIncomeSum
FROM
{{income}}
WHERE
user_id=:user_id
AND
idate>='$d1'
AND
idate<='$d2'";
$uid = Yii::app()->user->id;
$cmd = Yii::app()->db->createCommand($sql);
$row = $cmd->bindValue(':user_id', $uid)->queryRow();
return $row;
}
static public function computeAllData($d1="",$d2=""){
$user_id = Yii::app()->user->id;
if($d1 && $d2){
$where = "WHERE idate >= '{$d1}' AND idate <='{$d2}' AND user_id={$user_id}";
}else{
$where = "WHERE user_id={$user_id}";
}
$sql = "SELECT id,SUM(cpcAllShows) cpcAllShows,SUM(cpcValidClicks) cpcValidClicks,SUM(cpmAllShows) cpmAllShows,SUM(cpmValidShows) cpmValidShows,SUM(monthAllShows) monthAllShows,
SUM(totalIncome) totalIncome,SUM(cpcIncome) cpcIncome,SUM(cpmIncome) cpmIncome,SUM(monthIncome) monthIncome FROM {{income}}
$where
";
$row = Yii::app()->db->createCommand($sql)->queryRow();
return $row;
}
____view
<?php $form=$this->beginWidget('bootstrap.widgets.TbActiveForm',array(
'htmlOptions'=>array('style'=>'float:left;margin-bottom:-5px;')
)); ?>
<!--日期-->
<div style="float:left; margin-bottom: 20px;">
<div style="float:left;margin-left:5px;height:30px;text-align: bottom;position:position:relative "><p style='position:relative;margin:5px;font-size: 20px'>日期</p></div>
<?php
$this->widget('bootstrap.widgets.TbDateRangePicker', array(
'name'=>'Income[idate]',
'value'=>$model->idate,
'options'=>array(
'showAnim'=>'fold',
),
'htmlOptions'=>array(
'style'=>'height:20px;float:left;'
),
));?>
<?php $this->widget('bootstrap.widgets.TbButton', array('buttonType'=>'submit', 'type'=>'null', 'label'=>'查询','htmlOptions'=>array('style'=>'margin:0 0 10px 5px;')));?>
</div>
<?php $this->endWidget(); ?>
yii 日期插件的更多相关文章
- yii2.0使用bootstrap中日期插件
Yii2框架引用bootstrap中日期插件yii2-date-picker的方法. 使用composer安装 日期插件 php composer.phar require "2amigos ...
- 轻量级的日期插件--datebox
jquery的日期插件有好几款,H5中的input也可以自带日期选择.但为什么要再写一个,有两个理由,一个是引用的文件太大,而有时候只需要很简单的功能,二个是想加一些自定义的效果不好改. 我写的这个功 ...
- My97DatePicker日期插件
My97DatePicker是一款优秀的日期插件,它可以很方便地实现各种日期选择效果,博得广大IT开发人员的青睐. 下面来讲讲它的常用功能及设置方法. 方法/步骤 先来最简单的配置方法: (1)下 ...
- 基于JS功能强大的日期插件Kalendae
开发中需要一个日期插件,可以在zepto下使用,可以选择日期段,可以设置不可选日期 找到一个完全满足的,并且基于JS不依赖于任何库. 在线演示:http://chipersoft.com/Kalend ...
- jsp日期插件My97DatePicker
jsp日期插件My97DatePicker 强大的日期控件 使用方便简单 (2010-10-30 18:59:12) 转载▼ 标签: js javascript 日期插件 jsp it 分类: jqu ...
- jquery ui bootstrap日期插件
http://blog.csdn.net/php_897721669/article/details/7404527 搜索“jquery ui日期插件怎么显示年份”? $("#datepic ...
- (转)JQM 日期插件 mobiscroll Demo
(原)http://www.wglong.com/main/artical!details?id=11 JQM 日期插件 mobiscroll Demo 2013-04-25 / 分类:Jquery ...
- (转)jQuery Mobile 移动开发中的日期插件Mobiscroll 2.3 使用说明
(原)http://www.cnblogs.com/hxling/archive/2012/12/12/2814207.html jQuery Mobile 移动开发中的日期插件Mobiscroll ...
- bootstrap的日期插件datetimepicker有问题
bootstrap的日期插件datetimepicker在chrome中会出现掉下来的现象,而且一直没找到原因,下载最新版的插件直接在各个浏览器中都会掉下来, 问题一直解决不了,转而换其他插件 htt ...
随机推荐
- 哈尔滨理工大学第七届程序设计竞赛初赛(BFS多队列顺序)
哈尔滨理工大学第七届程序设计竞赛初赛https://www.nowcoder.com/acm/contest/28#question D题wa了半天....(真真正正的半天) 其实D题本来就是一个简单 ...
- jquery选择器总结2
1.JQuery的概念 JQuery是一个JavaScript的类库,这个类库集合了很多功能方法,利用类库你可以用一些简单的代码实现一些复杂的JS效果. 2.JQuery实现了 代码的分离 不用再网页 ...
- Eclipse+Spring学习(一)环境搭建(转)
最近由于投了一家公司实习,他要java工程师,而我大学3年的精力都花到了ASP.NET和前端上面,到找工作的时候才发现大公司不要.NET的,所以马上转型java...由于网上的高手都不屑于写这类文章, ...
- MySQL Disk--磁盘相关参数
/sys/block/sda/queue/nr_requests 磁盘队列长度.默认只有 128 个队列,可以提高到 512 个.会更加占用内存,但能更加多的合并读写操作,速度变慢,但能读写更加多的量 ...
- zeroMQ 学习
zeroMQ 是一个高性能的分布式设计的消息队列,网上有人进行过性能的比较,非常厉害,并且很大约40多种语言的API 可以调用,真实很不错的. 而且有一点就是使用简单,不需要服务器,对于使用C/C++ ...
- FastAdmin CMS 插件下载
FastAdmin CMS 插件下载 CMS内容管理系统插件(含小程序) 自定义内容模型.自定义单页.自定义表单.自定义会员发布.付费阅读.小程序等 提供全部前后端源代码和小程序源代码 功能特性 基于 ...
- [脚本] 一个用于BMP到EPS转换的BAT脚本实现(需要安装bmeps)
最近用LaTeX写文章, 图片需要使用eps格式. 如果你安装了bmeps这个工具(一般你装了CTeX就自带这个工具的), 可以在需要转换的目录打开CMD窗口, 然后输入: bmeps -c a.jp ...
- 什么是Base64算法?什么情况下用Base64算法?
base64 编码的本质:将 8bit 二进制数转化为 6bit 的可打印字符. Base64编码用于需要将二进制数据转为文本数据进行储存和传输的场景. Javascript内部的字符串,都以utf- ...
- 修改 input 框输入光标的样式
input, textarea { font-size: 24px; padding: 10px; color: red; text-shadow: 0px 0px 0px #000; -webkit ...
- win10激活命令
以管理员方式打开命令提示符输入以下3条命令slmgr /ipk W269N-WFGWX-YVC9B-4J6C9-T83GX 按回车slmgr /skms 54.223.212.31 按回车slmgr ...