php - 获取过去7天的点击总和

时间:2014-03-20 21:08:33

标签: php mysql pdo

我有一个表xeon_users_rented,其中包含:clicks0clicks1clicks2clicks3clicks4clicks5clicks6

每天clicks0会增加,并且每天午夜,cronjob将会运行,clicks0 = clicks1(设置今天的点击次数,昨天点击次数),然后将clicks0设置为零。

我想要实现的是我想制作一个图表,它显示点击次数0,点击次数等的总和,其中clicks0是今天的日期。

我有以下查询:

$data = array();
for ($x = 0; $x <= 6; $x++) {
    $date = date("Y/m/d", time() - ($x * 86400));
    $queryE = $dbh->prepare("SELECT SUM(clicks$x) FROM xeon_users_rented WHERE user_by=:username");
    $queryE->bindParam(":username", $userdata['username']);
    $queryE->execute();
    $row = $queryE->fetch(PDO::FETCH_ASSOC);
    $dates[] = date("Y/m/d", time() - ($x * 86400));   
    $data[] = ($row['clicks'.$x.''] > 0 ? $row['clicks'.$x.''] : 0);
}
$days = array('Today');
for ($i = 0; $i < 6; $i++) {
    $days[$i] = date('d-m', strtotime('-'.($i + 0).' day'));
}

$days工作正常 - 它将在今天和最近几天打印出来。

$ data 无效。它只是打印出来:

0,0,0,0,0,0,0

有人可以帮助我。

1 个答案:

答案 0 :(得分:1)

您的SUM中的列不会被命名为click $ x。它将被命名为SUM(clicks1)。

在SQL中提供显式名称,例如

SELECT SUM(clicks$x) as clickSum ...

然后将其作为

引用
$row['clickSum']