首页 > 解决方案 > CakePhp 2.x 在 Ajax 请求上打印 sql 查询

问题描述

我正在尝试在 Ajax 请求上打印 mysql 查询,但它没有显示。

我的查看页面

在此处输入图像描述

单击搜索按钮将调用一个 Ajax 函数

Ajax.js

$(document).ready(function(){

function random_number()
{
    return Math.floor(Math.random() * 255);
}
$("#btningSrch").click(function(){
    $("#rpts").html("<img src='https://xx.xx.xx.xx/project/img/ajaxLoader1.gif' />");
    alert("hi");
    $.ajax({
           type: "GET",
           url: "https://xx.xx.xx.xx/project/controller/view/"+random_number(),
           data: "startDate="+$("#startDate").val()+"&type="+$("#type").val()+"&orderby="+$("#orderby").val(),
           dataType: "html",
           success: function(msg){      
                alert(msg);
                $("#rpts").html(msg);
           }
         });
    return false;
  });
});

控制器.php

function show_in_summary()
{
    $this->isLoggedIn();
    //pr($this->request); exit;
    //echo $this->request->is('ajax');
    if ($this->request->is('ajax'))
    {
        //echo 2222; exit; //$this->layout = 'index3';
        //pr($this->InTrafficSummary->txtChk($this->params['url']['startDate']));
        //die();
        //pr($this->request->query);exit;
        //if ($this->InTrafficSummary->txtChk($this->request->query['startDate']))
        //{
            $this->set('record',1);
            $this->loadModel('InOutTrafficSummary');
            $data = $this->InOutTrafficSummary->readInBoundTrafficSummary($this->request->query['startDate'],
            $this->request->query['type'],$this->request->query['orderby']);
            $this->set('reports',$data[0]);
            $this->set('total',$data[1]);
            $this->set('date',date("Y-m-d",strtotime($this->request->query['startDate'])));
            $this->set('type',$this->request->query['type']);
        //}
        //else
        //{
            //$this->set('reports',array());
            //$this->set('record',0);   
            //$this->set('total',array());
            //$this->set('date',date("Y-m-d",strtotime($this->params['url']['startDate'])));
            //$this->set('type',$this->params['url']['type']);
        //}
    }
}               

模型.php

$rs = $this->find('all', array('joins' => array(array(
    'table' => 'InOutTrafficSummary',
    'alias' => 'Carriers',
    'type' => 'INNER',
    'conditions' => array(
     'Carriers.CarrierId = '.$useTable.'.FK_IngressCarrierId'))),
    'conditions' => array('InDate' => date("Y-m-d",strtotime("-1 days"))),
    'fields' => array(
'FK_IngressCarrierId,CarrierName,Sum(TotalCalls),Sum(ConnectedCalls),sum(Duration),(Sum(ConnectedCalls)/Sum(TotalCalls))*100,sum(Duration)/Sum(ConnectedCalls),sum(SaleAmount)'),'group' => 'FK_IngressCarrierId','order' => 'sum(Duration) DESC'));

echo $this->element('sql_dump'); exit;

我想打印上面的查询,因为它没有显示任何记录,我假设格式有错误,所以需要查看整个查询。所有其他事情都工作正常。

我是 CakePHP 的新手。

标签: phpajaxcakephpcakephp-2.x

解决方案


尝试这个

debug($this->YOUR_MODEL_NAME->getDataSource()->getLog(false, false));

推荐阅读