我有一个使用 Laravel 4 创建的登录/注销应用程序。我需要进行网络统计,以便每当用户登录时,它都会向我显示一天内用户数量的折线图。
下面是我的登录方法,每当用户登录时,我都会将数据保存在数据库中。
public function postLogin() {
$input = Input::all();
$rules = array('email' => 'required', 'password' => 'required');
$v = Validator::make($input, $rules);
if ($v->fails()) {
return Redirect::to('login')->withErrors($v);
} else {
$credentials = array('email' => $input['email'], 'password' => $input['password']);
if (Auth::attempt($credentials)) {
$id = Auth::user()->id;
$auditor = new Auditor();
$auditor->user_id = $id;
$auditor->operation = 'login';
$auditor->save();
return Redirect::to('admin');
} else {
return View::make('home.login', array('message' => 'Wrong username/password!'));
}
}
}
我有一个 Controller ,用于对数据库中的数据进行分组。我知道这是不正确的,但我不知道如何继续创建图表。
public function graph() {
$auditor = new Auditor();
$auditor = array();
//get data from database
$sql = "SELECT DATE('auditor'.'created') AS date" . "COUNT('auditor'.'auditor_id') AS 'count'". "FROM 'auditor'".
"WHERE auditor .created BETWEEN 2015-09-01 00:00:00 AND 2015-09-31 23:59:59". "GROUP BY date"."ORDER BY date";
$result = mysqli_query($sql) or die('Query failed: ' . mysql_error());
if ($result) {
while ($row = mysql_fetch_assoc($result)) {
}
}
请帮我看看如何绘制图表,是否可以在分组后在图表中显示数据?
最佳答案
我第二个phpChart 。过去用它来完成在线报告任务。非常容易快速创建图表。
这是使用 phpChart 基于其 online example -- Axis Labels Rotated Text 2: 的场景的解决方案
<?php
$line = array(array('user', 12), array('admin', 3), array('user2', 1), array('user3', 1));
$pc = new C_PhpChartX(array($line),'user_chart');
$pc->add_plugins(array('canvasTextRenderer'));
//set series
$pc->add_series(array('renderer'=>'plugin::BarRenderer'));
//set axes
$pc->set_axes(array(
'xaxis' => array(
'renderer'=>'plugin::CategoryAxisRenderer',
'tickRenderer'=>'plugin::CanvasAxisTickRenderer'),
'yaxis' => array(
'autoscale'=>true,
'tickRenderer'=>'plugin::CanvasAxisTickRenderer')
));
$pc->draw(800,500);
?>
这是我发现的关于 Codeproject 的精彩介绍:http://www.codeproject.com/Articles/604542/Creating-Interactive-HTML5-Graphs-in-PHP
Laravel 不提供任何开箱即用的图表库。您需要找到用 PHP 编写的第三方库才能从 Laravel 应用程序生成图表。
一些免费的图表库是:
- pChart - 用于构建图表的 PHP 类。示例图表如下所示:
- phpCHART - Make HTML5 Charts in PHP 。示例图表如下所示:
我强烈建议您搜索php charting library在 StackOverflow 中查看其他有经验的用户的意见。
选择特定库时,将其作为任何其他依赖项添加到您的composer.json 文件中。
关于php - 使用 PHP (laravel)/Mysql 进行网页统计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32686708/