簡體   English   中英

php代碼未進入循環(mysqli)

[英]php code doesn't enter loop (mysqli)

我嘗試使用RGraph(JS)繪制圖表。 我的網站上有一個用戶計數器。 現在,我想使用該圖進行用戶統計。

但是,我創建了一個列表,該列表應用於每個查詢(通過表格選擇月份和年份)。

我的問題是代碼不會進入循環以創建新值(天和計數)。

任何想法?

這里的代碼:

$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();
}

$days設置為0,僅在$months為2,4,6,9,11時才會更改$months因此對於$month其他每個值, $days將為0,並且不會進入for循環。

if (in_array($month, array(4,6,9,11))) {
//code
}
elseif ($month == 2) {
//code
}
else{
//code
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM