моей БД следующим образом,удаления пустых значений в PHP массивах
date income expenses maincat
2015-02-06 10000 salary
2015-02-05 500 bank charges
2015-02-05 300 rent
2015-02-01 500 bonus
и я использую следующий SQL запрос, чтобы получить значения DB.
$sql= mysqli_query($con,"SELECT maincat as label,income as value FROM transaction where date BETWEEN '$date1' AND '$date2' AND email='$user' GROUP BY maincat") or die ("error3");
и идет, хотя следующий запрос PHP,
$arr = array();
While($row1 = mysqli_fetch_assoc($sql)){
$arr[] = $row1;
}
$ar = array_values($arr);
и выдает ставить так,
[{"label":"income","value":"10000"},{"label":"bank charges","value":""},{"label":"rent","value":""},{"label":"bonus","value":"500"}]
и я передаю, что значения в Java Script (Morris. js), чтобы показать его в диаграмме пончика. но это не сработает. когда значения, как,
[{"label":"income","value":"10000"},{"label":"bonus","value":"500"}]
работает fine.I косяк пут «» значения как «0», потому что нет никакого фактического дохода как «банковские сборы» или «аренда» (они являются расходами), есть ли способ чтобы удалить эти пустые значения ({ «метка»: «банковские сборы», «значение»: «»}) сверху и выйти кладется как,
[{"label":"income","value":"10000"},{"label":"bonus","value":"500"}]
и мой morris.js код следующим образом,
<script>
Morris.Donut({
element: 'donut',
resize : true,
data : <?php echo json_encode($ar); ?>,
backgroundColor: '#0011',
labelColor: 'black',
colors:[
'#A4A4A4','#FE2E64','#0B610B','#0B615E',
'#FF8000','#088A68','#4B8A08','#A9D0F5',
'#5F4C0B','#F3F781','#81BEF7','#04B431',
'#D7DF01','#BE85F7','#BE59F7','#BE81F7',
'#F4FA58','#0431B4','#D8D8D8','#4C0B5F',
'#086A87','#F7D358','#DF7401','#B18904',
'#045FB4',
],
});
</script>
спасибо ..
Вы можете просто не запрашивать их у db в первую очередь. Просто добавьте 'И доход! = ''' К вашему запросу – user1950929