duanlaofu4108 2015-10-29 05:07
浏览 22
已采纳

我想明天获取数据

I want to fetch data $form to $to variable which has date stored in it. so basicaly I want to fetch the data date wise.

Here is my code:

if ($_POST['data'] == 'paymentanalyticdata') {
    $criteria = new CDbCriteria;
    $criteria->join = 'LEFT OUTER JOIN payment_integration AS PI ON PI.name = t.payment_method AND PI.store_id=' . Yii::app()->session['store_id'];
    $criteria->select = 'PI.title as payment_method,sum(t.total) as total';
    $criteria->group = 'PI.title';
    $criteria->condition = 't.store_id=\'' . Yii::app()->session['store_id'] . '\'';

    $from = isset($_POST['from']) ? $_POST['from'] : '';
    $to = isset($_POST['to']) ? $_POST['to'] : '';
    if ($from != '' && $to != '') {
        $criteria->condition .= 't.entrydate';
    }
    $list = Order::model()->findAll($criteria);

    $categorylist = [];
    foreach ($list as $row) {
        $categorylist[] = array('PI' => $row->payment_method, 'total' => $row->total);
    }

    $seocount['paymentanalyticdata'] = $categorylist;
    echo json_encode($seocount);

I want to write condition in

$criteria->condition .='????';
What code should be write in this condition.
  • 写回答

3条回答 默认 最新

  • doudou0111 2015-10-29 05:43
    关注

    You could use addCondition, something like:

    if ($from != '' && $to != '') {
        $criteria->addCondition('t.entrydate >= :startDate AND t.entrydate <= :endDate');
        $criteria->params = array(':startDate' => $from, ':endDate' => $to);
    }
    

    or, by using addBetweenCondition:

    if ($from != '' && $to != '') {
       $criteria->addBetweenCondition("entrydate", $from, $to);
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥100 set_link_state
  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号
  • ¥15 基于单片机的靶位控制系统
  • ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度