2016-06-30 26 views
0

私はmysqlからデータを持ってきて、何ヶ月も組織したいと思っています。月ごとに日付を区切り、すべての月の値をSUMにSUMを適用して整理します。chart.js 私の問題はチャート上にあります。チャートはユニークな月のすべての結果を表示しています。 1月には、非常に多くのデータを持っており、それらのすべてが...例えば、2月に予定されてChat.js、CodeigniterおよびMySQL。

マイコントローラ:

`<?php 
defined('BASEPATH') OR exit('No direct script access allowed'); 

class start extends CI_Controller { 

public function index(){ 
$this->load->model('Start_class'); 
$data['janeiro'] = $this->Start_class->janeiro(); 
$data['fevereiro'] = $this->Start_class->fevereiro();` 

マイモデル:

function janeiro(){ 
$minvalue = '2016-01-01'; 
$maxvalue = '2016-01-31'; 

$query1 = $this->db->select('SUM(valorcompra) as valorcompra')->from('compravista')->where("datavencimento BETWEEN '$minvalue' AND '$maxvalue' ")->get(); 
$retorno = $query1->row()->valorcompra; 
return $retorno; 
} 

function fevereiro(){ 
$minvalue = '2016-02-01'; 
$maxvalue = '2016-02-31'; 

$query2 = $this->db->select('SUM(valorcompra) as valorcompra')->from('compravista')->where("datavencimento BETWEEN '$minvalue' AND '$maxvalue'")->get(); 
$retorno = $query2->row()->valorcompra; 
return $retorno; 
} 

私の表:

var data = { 
    labels: ["Janeiro", "Fevereiro", "Março", "Abril", "Maio", "Junho", "Julho", "Agosto", "Setembro", "Outubro", "Novembro", "Dezembro"], 
    datasets: [ 
    { 
     label: "Dados primários", 
     fillColor: "rgba(151,187,205,0.5)", 
     strokeColor: "rgba(151,187,205,0.8)", 
     highlightFill: "rgba(151,187,205,0.75)", 
     highlightStroke: "rgba(151,187,205,1)", 

     data: [<? echo $janeiro ?>, <? echo $fevereiro ?>, randomnb(), randomnb(), randomnb(), randomnb(), randomnb(), randomnb(), randomnb(), randomnb(), randomnb(), randomnb()] 
    }, 
+0

あなたは何を得ていますか? –

+0

**モデル**では、 'Where'文を間違って使用しました。両方のクエリーで 'where(" datavalues = '$ minvalue' AND '$ maxvalue' "、null、false)'に変更してください。 –

+0

ああ、それは部分的に解決!しかし、nullの月はチャートに表示されません。 – Fiorucci

答えて

0

モデルでは、Whereステートメントを間違って使用しています。

where("datavencimento BETWEEN '$minvalue' AND '$maxvalue' ") 

両方のクエリで

where("datavencimento BETWEEN '$minvalue' AND '$maxvalue' ",null,false)

に交換してください。

関連する問題