0

我尝试用 RGraph(JS) 制作图表。我的网站上有一个用户计数器。现在我想用这张图做一个用户统计。

但是,我创建了一个列表,应该用于每个查询(制作了一个表格来选择月份和年份)。

我的问题是代码没有进入循环来创建新值(Day 和 Count)。

任何的想法?

这里的代码:

$days = 0;
$day_value = array();

//check months which have 30 days
if (in_array($month, array(4,6,9,11))) {
    $days = 30; 

}
//leapyear?
if ($month == 2) {
    if ($year%4 == 0) {
        $days = 29;
    } else {
        $days = 28;
    }
} 

//Count users for each day
for ($i=1; $i<=$days; $i++) {
    $sql = "SELECT
                 Anzahl
            FROM
                 Counter
            WHERE
                 YEAR(Datum) = '".$year."' AND
                 MONTH(Datum) = '".$month."' AND
                 DAYOFMONTH(Datum) = '".$i."'";
    if (!$result = $db->query($sql)) {
        return $db->error;
    }

    $row = $result->fetch_assoc();
    $day_value[$i] = (int)$row['Anzahl'];
} 

//delete list for new month/year
$sql = "DELETE
        FROM
            Statistics
           ";
if (!$result = $db->query($sql)) {
    return $db->error;
}

//Create list with values for each day
for ($j=1; $j<=$days; $j++) {
    $sql = "INSERT INTO 
                Statistics(Day,Count)
            VALUES 
                (?, ?)";
    $stmt = $db->prepare($sql);
    if (!$stmt) {
        return $db->error;
    }
    $stmt->bind_param('ii', $j, $day_value[$j]);
    if (!$stmt->execute()) {
        return $stmt->error;
    }

    $stmt->close();
}
4

1 回答 1

0

$days设置为 0,它仅在$months2,4,6,9,11 时更改,因此对于每个其他值$month $days0 并且不进入 for 循环。

if (in_array($month, array(4,6,9,11))) {
//code
}
elseif ($month == 2) {
//code
}
else{
//code
}
于 2012-05-19T00:17:14.140 回答