php - 如何使用PHPMyGraph5.0 mysql php

标签 php mysql graph

请帮忙,我已经找了好几个月了。似乎无法使用 phpMyGraph5.0 来 mysql php。 这是我的代码。

//Set content-type header
header("Content-type: image/png");

//Include phpMyGraph5.0.php
include_once('phpMyGraph5.0.php');
include('includes/dbconnect.php');

//Set config directives
$cfg['title'] = 'Example graph';
$cfg['width'] = 400;
$cfg['height'] = 200;

//Set data
$query="SELECT
        EXTRACT(MONTH FROM `table`.`datetime`) AS `date`,
        COUNT(DISTINCT `table`.`id`) AS `count`
        FROM `table`
        WHERE `table`.`datetime` BETWEEN '2015-01-01' AND '2015-12-31'
        GROUP BY `date`
        ORDER BY `date`";

$result = mysql_query($query) or die('Query failed: ' . mysql_error());

if ($result) {
    $data=array(
    while ($row = mysql_fetch_assoc($result)) {
        $month=$row["date"];
        $count=$row["count"];
        //add to data areray
        $dataArray[$month]=$count;
    }

);
 }
//Create phpMyGraph instance
$graph = new phpMyGraph();

//Parse
$graph->parseVerticalColumnGraph($data, $cfg);
?>

我需要能够发布一个由月份和每月唯一 ID 数量组成的图表。在代码中,月份为 $row["date"],唯一 ID 的数量为 $row["count"]。

图表应类似于 this .

这是原始代码。我需要我的代码像此代码中的数组一样输出。

<?php    
    //Set content-type header
    header("Content-type: image/png");

    //Include phpMyGraph5.0.php
    include_once('phpMyGraph5.0.php');

    //Set config directives
    $cfg['title'] = 'Example graph';
    $cfg['width'] = 400;
    $cfg['height'] = 200;

    //Set data

    //add to data areray
    $data = array 
    ( 
        'JAN'=>10, 
        'FEB'=>20, 
        'MAR'=>30, 
        'APR'=>100, 
        'MAY'=>20, 
        'JUNE'=>110, 
        'JULY'=>50,
        'AUG'=>50,
        'SEPT'=>50,
        'OCT'=>50,
        'NOV'=>50,
        'DEC'=>50,
    ); 
    //Create phpMyGraph instance
    $graph = new phpMyGraph();

    //Parse
    $graph->parseVerticalColumnGraph($data, $cfg);
?>

最佳答案

如果我理解您需要在调用 mysql_query() 函数之前连接到 MySQL 服务器并选择数据库,是这样吗?

这确实很容易做到,您可以使用以下代码来实现:

$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
    die('Couldn\'t connect: ' . mysql_error());
}

// Database name
$db_selected = mysql_select_db('DatabaseName', $link);
if (!$db_selected) {
    die ('Error in mysql_select_db(): ' . mysql_error());
}

您可以查看PHP documentation了解更多。希望对你有帮助。

编辑:

了解更多详细信息后,问题似乎不是连接到数据库而是输出图形。 PHP 页面输出图像,因此您不能像其他 PHP 页面一样直接加载它,您应该尝试使用以下代码在另一个页面中输出从 PHP 页面生成的图像,就像 PHPMyGraph 示例中一样:

<img src="pageThatOutputsTheGraph.php?data=someData" alt="Example code">

关于php - 如何使用PHPMyGraph5.0 mysql php,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30568164/

相关文章:

PHP - MYSQL - 测试数据库服务器

mysql - 太多复合(多列)索引可以吗?

mysql - 为 Mediawiki 使用多个数据库

javascript - 在 Rails 3 + dygraphs 上作图

php - 在没有验证码的情况下针对垃圾邮件进行优化

php - 每秒连接一个mysql数据库

algorithm - 查找图中从起始节点到结束节点的所有路径

python - 生成复合饼图或饼图饼图

php - 基于用户输入的计时器 PHP

php - 如何将 MySQL 查询转换为 Laravel Eloquent 查询?