作者:k78283381 | 来源:互联网 | 2023-08-28 11:33
我必须从数据库中提取过去7天每天赚多少钱,并使用morris.js将其显示在折线图中。
在下面的代码中,有两个函数dayFormatted()
和displayDayEarnings()
。
dayFormatted()
显示最近7天的每一天,据我所知,这部分工作正常。
displayDayEarnings()
应该从数据库中提取收入。
现在这是我在数据数组中的脚本标签中获取值的问题:我们有7次displayDayEarnings(dayFormatted(6,false));
得到7天。
这不起作用,图表也不会显示。
但是,如果我将false
更改为true,则会显示图表,但显示的值不正确。我只需要让它开始工作即可。
//Get day formatted
function dayFormatted($day,$display) {
if($day == 0) {
if($display == true) {
echo date('Y-m-d');
} else {
return date('Y-m-d');
}
} else {
$dayX = strtotime(date('Y-m-d'));
$dayX = date('Y-m-d',strtotime("-$day day",$dayX));
if($display == true) {
echo $dayX;
} else {
return $dayX;
}
}
}
//Display day earnings
function displayDayEarnings($day){
$todayEarnings = 0.00;
$sqlEarnings = "SELECT orderTotal FROM sc_orders WHERE orderStatus='approved' AND DATE(orderDate)='$day'";
$queryEarnings = $GLOBALS['mysqli']->query($sqlEarnings);
if($queryEarnings === FALSE){
//query crash
echo 0.00;
} else {
$countEarnings = $queryEarnings->num_rows;
if($countEarnings > 0){
while($rowEarnings = $queryEarnings->fetch_assoc()){
$orderTotal = $rowEarnings['orderTotal'];
$orderTotal = preg_replace('#[^0-9.,]#i','',$orderTotal);
$todayEarnings = $todayEarnings + $orderTotal;
}
return $todayEarnings;
}else{
//No earnings
return 0.00;
}
}
}
?>
我的代码中是否存在我看不到的错误?非常感谢您的帮助。