Laravel从数据库中获取所有数据并将其放入图表中

时间:2015-04-30 17:09:34

标签: javascript php mysql laravel-4 charts

我正在与 Laravel 4 合作构建应用程序。

现在,我确实将所有访问者都计入一个独特的'办法。因此,如果今天已经访问了系统,那么系统确实很糟糕,如果是这样,它只会计算数据库中的点击次数。

  

我的数据库结构是什么样的:

Structure

我希望系统在第X个月计算第X天的访问者(以及IP地址)。就像30/04/2015的访问者在我的表2015-04-30中一样。我想计算那天和一个月的其他日子的所有IP地址。但是当月份结束时,它需要获取下个月的值,所以我想要当前月份的值。

hits只是计算点击次数'在我的网站上,所以不需要提及。

日期和visit_date告诉我当前的访问日期,visit_time给了我访问的时间。

我当前的代码如下所示,显示值:

public function index()
{

    $select_stats = DB::table('visitor')->whereBetween('visit_date', array(date('Y-m-01'), date('Y-m-t')))->get();

    $month = date('m');

    $get_count = DB::select(DB::raw("SELECT count(*) FROM visitor WHERE MONTH(date) = $month GROUP BY DAY(date)"));


    foreach($select_stats as $statics) {

   //change our object to an array
   $statics = array();
    }


return View::make('admin.home.index')->with('stats', $select_stats)/*->with('count', $get_count)*/;

}

但是当我尝试显示此代码时,使用计算的数字,它不再起作用了。我的观点如下:

<script type="text/javascript">
    var visitors = [
@foreach($stats as $stat)
                ['{{ date("d/m/Y", strtotime($stat->date)) }}', 55],
@endforeach
            ];
</script>

因此,我视图中的55是计算的访问者作为输出。

有人可以尽快帮助我吗?

最诚挚的问候,

罗宾

1 个答案:

答案 0 :(得分:0)

我并没有真正理解这一切,但有些事情可以帮助...... 1.我真的建议使用模型类而不是使用数据库原始查询。那是Laravel非常棒的地方。例如,它将是:

$select_stats= Visitor::where('visit_date', '>=', Carbon::now()->startOfMonth())->get();
$get_count = $select_stats->count();
  1. 我不会在脚本中执行foreach,而是返回一个json数组。因此,您可以将'stats'变量发送到您的视图,而不是:

    with('stats',$ select_stats-&gt; lists('visit_date'))

  2. 然后在脚本中你只需要使用:

    {{ json_encode($stats) }}