PHP kodunu düzenledim. Tablo içerisine kar grafiğini de ekledim ufak tefek hata verebilir test edemedim malum. Test edin duruma göre tekrar kontrol ederim sorunlu kısımlarını.
<?php
$toplamGelir = 0;
$toplamGider = 0;
$toplamKar = 0;
$giderGrafik = '';
$gelirGrafik = '';
$karGrafik = '';
$q = $db->query("select distinct(kategori) from kayitlar where harcamatarihi = DATE(NOW()) ");
foreach ($q AS $a) {
$kategori = $a["kategori"];
//$tur = $a["tur"];
$giderTutar =@ $db->get_var("select sum(tutar) from kayitlar harcamatarihi = DATE(NOW()) and tur = 'gider' and kategori = '".$kategori."'");
$gelirTutar =@ $db->get_var("select sum(tutar) from kayitlar harcamatarihi = DATE(NOW()) and tur = 'gelir' and kategori = '".$kategori."'");
$kar =@ $gelirTutar - $giderTutar;
$giderGrafik .= "['".KategoriAdiBul($kategori)."', ".$giderTutar."],";
$gelirGrafik .= "['".KategoriAdiBul($kategori)."', ".$gelirTutar."],";
$karGrafik .= "['".KategoriAdiBul($kategori)."', ".$kar."],";
$toplamGider += $giderTutar;
$toplamGelir += $gelirTutar;
$toplamKar += $kar;
}
// grafik için topla
$giderGrafik = substr($giderGrafik, 0, -1);****
$gelirGrafik = substr($gelirGrafik, 0, -1);****
$karGrafik = substr($karGrafik, 0, -1);****
?><td width="50%" height="329" id="chart_giderler"><script type="text/javascript">
google.load("visualization", "1", {packages:["corechart"]});
google.setOnLoadCallback(drawChart);
function drawChart() {
var data = google.visualization.arrayToDataTable([
['<?=CATEGORY;?>', '<?=AMOUNT;?>'],
<?=$giderGrafik;?>
]);
var options = {
title: '<?=date("n");?>.<?=MONTH;?> <?=GIDERLERI;?>',
is3D: true,
};
var chart = new google.visualization.PieChart(document.getElementById('chart_giderler'));
chart.draw(data, options);
}
</script>
<h4><?=TOTAL_OUTGOINGS;?>: <?=Fiyat($toplamGider);?> TL</h4>
</td>
<td width="50%" id="chart_gelirler"><script type="text/javascript">
google.load("visualization", "1", {packages:["corechart"]});
google.setOnLoadCallback(drawChart);
function drawChart() {
var data = google.visualization.arrayToDataTable([
['Kategori', 'Tutar'],
<?=$gelirGrafik;?>
]);
var options = {
title: '<?=date("n");?>.<?=MONTH;?> <?=GELIRLERI;?>',
is3D: true,
};
var chart = new google.visualization.PieChart(document.getElementById('chart_gelirler'));
chart.draw(data, options);
}
</script>
<h4><?=TOTAL_INCOME;?>: <?=Fiyat($toplamGelir);?> TL</h4>
</td>
<td width="50%" id="chart_kar"><script type="text/javascript">
google.load("visualization", "1", {packages:["corechart"]});
google.setOnLoadCallback(drawChart);
function drawChart() {
var data = google.visualization.arrayToDataTable([
['Kategori', 'Tutar'],
<?=$karGrafik;?>
]);
var options = {
title: '<?=date("n");?>.<?=MONTH;?> <?=GELIRLERI;?>',
is3D: true,
};
var chart = new google.visualization.PieChart(document.getElementById('chart_kar'));
chart.draw(data, options);
}
</script>
<h4><?=TOTAL_INCOME;?>: <?=Fiyat($toplamKar);?> TL</h4>
</td>
</tr>
verdiğiniz kodlar ile birtürlü veri döndüremedim. @ kaldırdığımda hata alamadım.. Sayfamın tüm kodlarını paylaşıyorum
<?php include "inc.header.php";?>
<?php
$q = $db->query("select distinct(kategori) from kayitlar where harcamatarihi = DATE(NOW()) and tur = 'gider'");
foreach ($q AS $a) {
$kategori = $a["kategori"];
$qs = $db->query("select sum(tutar) from kayitlar where harcamatarihi = DATE(NOW()) and tur = 'gider' and kategori = '".$kategori."'");
$kayit .= "['".KategoriAdiBul($kategori)."', ".$qs[0][0]."],";
$toplamGider += $qs[0][0];
}
// grafik için topla
$kayit = substr($kayit,0,-1);
$q = $db->query("select distinct(kategori) from kayitlar where harcamatarihi = DATE(NOW()) and tur = 'gelir'");
foreach ($q AS $a) {
$kategori = $a["kategori"];
$qs = $db->query("select sum(tutar) from kayitlar where harcamatarihi = DATE(NOW()) and tur = 'gelir' and kategori = '".$kategori."'");
$gelirler .= "['".KategoriAdiBul($kategori)."', ".$qs[0][0]."],";
$toplamGelir += $qs[0][0];
}
// grafik için topla
$gelirler = substr($gelirler,0,-1);
$q = $db->query("select distinct(odemeturu) from kayitlar where harcamatarihi = DATE(NOW()) and tur = 'gelir'");
foreach ($q AS $a) {
$odemeturu = $a["odemeturu"];
$qs = $db->query("select sum(tutar) from kayitlar where harcamatarihi = DATE(NOW()) and tur = 'gelir' and odemeturu = '".$odemeturu."'");
$odemeler .= "['".OdemeTuruAdiBul($odemeturu)."', ".$qs[0][0]."],";
$toplamodeme += $qs[0][0];
}
// grafik için topla
$odemeler = substr($odemeler,0,-1);
$q = $db->query("select distinct(odemeturu) from kayitlar where harcamatarihi = DATE(NOW()) and tur = 'gider'");
foreach ($q AS $a) {
$odemeturu = $a["odemeturu"];
$qs = $db->query("select sum(tutar) from kayitlar where harcamatarihi = DATE(NOW()) and tur = 'gider' and odemeturu = '".$odemeturu."'");
$odemelergider .= "['".OdemeTuruAdiBul($odemeturu)."', ".$qs[0][0]."],";
$toplamodeme += $qs[0][0];
}
// grafik için topla
$odemelergider = substr($odemelergider,0,-1);
$ggOrani = (($toplamGelir-$toplamGider)/$toplamGelir)*100;
$gelirGiderOrani = (100-(round($ggOrani)));
echo '
<script>
$(function() {
$("#ek_header").html(\'<div class="col-sm-4" style="margin-top: 10px;"><span class="label label-danger">'.AyAdiBul(date("n")).' '.GIDER.' '.Fiyat($toplamGider).' '.$kurSembol.'</span></div> <div class="col-sm-4" style="margin-top: 10px;"><span class="label label-success">'.AyAdiBul(date("n")).' '.GELIR.' '.Fiyat($toplamGelir).' '.$kurSembol.'</span></div> <div class="col-sm-4" style="margin-top: 10px;"><span class="label label-default" title="'.GELIRE_GORE_HARCAMA_ORANI.'">'.EXPENDITURE_RATIO.' %'.$gelirGiderOrani.'</span></div>\');
});
</script>
';
if (isset($_POST["tur"])) {
foreach ($_POST AS $k=>$v) $$k=$v;
$taksit = $_POST["taksit"];
//$yil = date("Y");
list($gun,$ay,$yil) = explode("/",$harcamaTarihi);
if (substr($ay,0,1) == "0") {
$ay = str_replace("0","",$ay);
}
$htarihi = "$yil-$ay-$gun";
$eklenenler = array();
foreach ($taksit AS $taksit) { // fiyat verileri taksit şeklinde gelecek
list($taksitNo,$taksitTutari) = explode("*",$taksit);
$taksitTutari = str_replace(".","",$taksitTutari); // gelen veri örneği: 3.500,00 kuruşlar virgül ile
$taksitTutari = str_replace(",",".",$taksitTutari);
$db->query("insert into kayitlar set tur = '".$tur."', ay = '".$ay."', tutar = '".$taksitTutari."', kategori = '".$kategori."', aciklama = '".$aciklama."', time = '".time()."', yil = '".$yil."', taksitNo = '".$taksitNo."', odemeTuru = '".$odemeTuru."', toplamTaksit = '".$taksitSayisi."', harcamaTarihi = '".$htarihi."'");
$eklenenler[] = $db->lastid();
$hata = $db->getError();
if ($hata == "") {
if ($taksitSayisi == "1") { // peşin ise
echo Bilgilendirme::Basarili(SAVED);
}else{ // taksitler var ise
echo Bilgilendirme::Basarili(''.$taksitNo.'. '.INSTALLMENT_SAVED.'');
}
}
$ay++;
if ($ay >= "13") {
$yil = $yil+1;
$ay = 1;
$htarihi = "$yil-$ay-$gun";
}
}
// eklenen kayıtları güncelle
foreach ($eklenenler AS $ekId) {
$db->query("update kayitlar set anaId = '".$eklenenler[0]."' where id = '".$ekId."'");
}
}
?>
<form role="form" method="post" action="">
<div class="row" style="margin-bottom: 10px;">
<div class="col-lg-6 col-md-6 col-sm-6 col-xs-6">
<?=PAYMENT_DATE;?>:
</div>
<div class="col-lg-6 col-md-6 col-sm-6 col-xs-6">
<input type="text" name="harcamaTarihi" id="harcamaTarihi" class="form-control tarih" placeholder="<?=GUN_AY_YIL;?>" value="<?=date("d/m/Y");?>" />
</div>
</div>
<div class="row" style="margin-bottom: 10px;">
<div class="col-lg-6 col-md-6 col-sm-6 col-xs-6">
<?=TRANS_TYPE;?>:
</div>
<div class="col-lg-6 col-md-6 col-sm-6 col-xs-6">
<select name="tur" class="form-control">
<option value="gelir"><?=GELIR;?>
<option value="gider"><?=GIDER;?>
</select>
</div>
</div>
<div class="row" style="margin-bottom: 10px;">
<div class="col-lg-6 col-md-6 col-sm-6 col-xs-6">
<?=CATEGORY;?>:
</div>
<div class="col-lg-6 col-md-6 col-sm-6 col-xs-6">
<select name="kategori" id="kategori" class="form-control" required>
<option value=""><?=PLEASE_SELECT;?></option>
<?php
$q = $db->query("select * from kategori order by adi ASC");
foreach ($q AS $a) {
echo "<option value='".$a["id"]."'>".$a["adi"]."</option>";
}
?>
</select>
</div>
</div>
<div class="row" style="margin-bottom: 10px;">
<div class="col-lg-6 col-md-6 col-sm-6 col-xs-6">
<?=AMOUNT;?>:
</div>
<div class="col-lg-6 col-md-6 col-sm-6 col-xs-6">
<input type="text" name="tutar" id="tutar" class="form-control" value="" />
</div>
</div>
<div class="row" style="margin-bottom: 10px;">
<div class="col-lg-6 col-md-6 col-sm-6 col-xs-6">
<?=PAYMENT_TYPE;?>:
</div>
<div class="col-lg-6 col-md-6 col-sm-6 col-xs-6">
<select name="odemeTuru" id="odemeTuru" class="form-control">
<option value=""><?=PLEASE_SELECT;?></option>
<?php
$oq = $db->query("select * from odemeturleri order by adi ASC");
foreach ($oq AS $o) {
echo "<option value='".$o["id"]."'>".$o["adi"]."</option>";
}
?>
</select>
</div>
</div>
<div class="row" style="margin-bottom: 10px;">
<div class="col-lg-6 col-md-6 col-sm-6 col-xs-6">
</div>
<div class="col-lg-6 col-md-6 col-sm-6 col-xs-6">
<select type="hidden" name="taksitSayisi" id="taksit" class="hidden">
<option value=""><?=PLEASE_SELECT;?></option>
<option value="1"><?=CASH;?></option>
</select>
<div class="hide" id="taksit_sonuc"></div>
</div>
</div>
<div class="row" style="margin-bottom: 10px;">
<div class="col-lg-6 col-md-6 col-sm-6 col-xs-6">
<?=DETAILS;?>:
</div>
<div class="col-lg-6 col-md-6 col-sm-6 col-xs-6">
<textarea name="aciklama" class="form-control" onKeyUp="this.value=this.value.buyukHarf()" placeholder="<?=PLEASE_ENTER_DESC;?>" style="height: 90px;"></textarea>
</div>
</div>
<div class="row" style="margin-bottom: 10px;">
<div class="col-lg-12" style="text-align: right;">
<button type="submit" class="btn btn-default"><?=SAVE;?></button>
</div>
</div>
</form>
<script>
$(function() {
$("#kategori").change(function() {
var id = $(this).val();
$.ajax({
type: "POST",
url: "ajax.php?islem=sabit",
data: "kategori="+id,
cache: false,
success: function(sonuc){
if (sonuc != "0.00") {
$("#tutar").val(sonuc);
}
}
});
});
$("#taksit, #tutar").change(function() {
var tutar = $("#tutar").val();
var taksit = $("#taksit").val();
if (taksit == "") {
$("#taksit_sonuc").html("");
}else{
$("#taksit_sonuc").html("<strong><?=CALCULATING;?>...</strong>");
$.ajax({
type: "POST",
url: "ajax.php?islem=taksithesapla",
data: "tutar="+tutar+"&taksit="+taksit,
cache: false,
success: function(sonuc){
if (sonuc != "") {
$("#taksit_sonuc").html(sonuc);
}
}
});
}
});
$("#odemeTuru").change(function() {
var val = $(this).val();
if (val != "") {
$("#taksit option[value=1]").attr("selected","selected").change();
}
});
});
</script>
<hr />
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<table width="100%" height="660" border="1">
<tr>
<td width="50%" height="329" id="chart_giderler"><script type="text/javascript">
google.load("visualization", "1", {packages:["corechart"]});
google.setOnLoadCallback(drawChart);
function drawChart() {
var data = google.visualization.arrayToDataTable([
['<?=CATEGORY;?>', '<?=AMOUNT;?>'],
<?=$kayit;?>
]);
var options = {
title: '<?=date("n");?>.<?=MONTH;?> <?=GIDERLERI;?>',
is3D: true,
};
var chart = new google.visualization.PieChart(document.getElementById('chart_giderler'));
chart.draw(data, options);
}
</script>
<h4><?=TOTAL_OUTGOINGS;?>: <?=Fiyat($toplamGider);?> TL</h4></td>
<td width="50%" height="329" id="chart_gelirler"><script type="text/javascript">
google.load("visualization", "1", {packages:["corechart"]});
google.setOnLoadCallback(drawChart);
function drawChart() {
var data = google.visualization.arrayToDataTable([
['Kategori', 'Tutar'],
<?=$gelirler;?>
]);
var options = {
title: '<?=date("n");?>.<?=MONTH;?> <?=GELIRLERI;?>',
is3D: true,
};
var chart = new google.visualization.PieChart(document.getElementById('chart_gelirler'));
chart.draw(data, options);
}
</script></td>
</tr>
<tr>
<td width="50%" height="329" id="chart_odemelergider"><script type="text/javascript">
google.load("visualization", "1", {packages:["corechart"]});
google.setOnLoadCallback(drawChart);
function drawChart() {
var data = google.visualization.arrayToDataTable([
['SDF', 'Tutar'],
<?=$odemelergider;?>
]);
var options = {
title: '<?=date("n");?>.<?=MONTH;?> <?=GIDERLERI;?>',
is3D: true,
};
var chart = new google.visualization.PieChart(document.getElementById('chart_odemelergider'));
chart.draw(data, options);
}
</script></td>
<td width="50%" height="329" id="chart_odemeturu"><script type="text/javascript">
google.load("visualization", "1", {packages:["corechart"]});
google.setOnLoadCallback(drawChart);
function drawChart() {
var data = google.visualization.arrayToDataTable([
['odemeler', 'Tutar'],
<?=$odemeler;?>
]);
var options = {
title: '<?=date("n");?>.<?=MONTH;?> <?=GELIRLERI;?>',
is3D: true,
};
var chart = new google.visualization.PieChart(document.getElementById('chart_odemeturu'));
chart.draw(data, options);
}
</script>
<h4><?=TOTAL_INCOME;?>: <?=Fiyat($toplamodeme);?> TL</h4></td>
</tr>
</table>
<?php
echo "<h3>".GELIRE_GORE_HARCAMA_ORANI.": %".$gelirGiderOrani."</h3>";
?>
<?php include "inc.footer.php";?>