Получить данные из MySQL по php, чтобы создать график - PullRequest
12 голосов
/ 21 августа 2009

Привет, я пытаюсь получить данные из базы данных MySQL для создания графа Может ли кто-нибудь провести меня через эту процедуру или дать мне представление о том, что делать спасибо

Ответы [ 4 ]

22 голосов
/ 21 августа 2009

Вы, вероятно, хотите что-то подобное. Я не использовал flot, но я посмотрел на пример здесь .

<?php
//create array of pairs of x and y values
$dataset1 = array();
while ($row = mysql_fetch_assoc()) { //or whatever
    $dataset1[] = array( $row['xvalue'], $row['yvalue'] );
}
?>

<script type="text/javascript">
    //put array into javascript variable
    var dataset1 = <?php echo json_encode($dataset1); ?>;

    //plot
    $(function () {
         $.plot($("#placeholder"), [ dataset1 ]);
    });
</script>
3 голосов
/ 29 ноября 2011

Добавление по примеру из @ Том Хей :

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
 <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>Flot Examples</title>
    <link href="layout.css" rel="stylesheet" type="text/css">
    <!--[if lte IE 8]><script language="javascript" type="text/javascript" src="../excanvas.min.js"></script><![endif]-->
    <script language="javascript" type="text/javascript" src="../jquery.js"></script>
    <script language="javascript" type="text/javascript" src="../jquery.flot.js"></script>
 </head>
    <body>
    <h1>Flot Examples</h1>

    <div id="placeholder" style="width:600px;height:300px;"></div>

<?php

$server = "localhost";
    $user="user";
    $password="password";  
    $database = "some_database";

    $connection = mysql_connect($server,$user,$password);
    $db = mysql_select_db($database,$connection);

query = "SELECT x_axis_values, y_axis_values FROM some_table";
    $result = mysql_query($query);        

    while($row = mysql_fetch_assoc($result))
    {
        $dataset1[] = array($row['x_axis_value'],$row['y_axis_value']);
    }

?>


<script type="text/javascript">
$(function () {
    var dataset1 = <?php echo json_encode($dataset1); ?>;

    $.plot($("#placeholder"), [ dataset1 ]);
});
</script>

 </body>
</html>
2 голосов
/ 26 июля 2012

, как говорят @Tom Haigh, работают хорошо, но вам нужно добавить другой код, чтобы он работал, я использовал пример, но я обнаружил, что в исходном коде он добавляет к кавычкам результата ", чтобы избежать этого, просто добавьте: intval в массив, пример:

<?php
$query = "SELECT valx, valy FROM chart";
    $result = mysql_query($query);        

    while($row = mysql_fetch_assoc($result))
    {
        $d2[] = array (intval($row['valx']),intval($row['valy']));
    }
?>
0 голосов
/ 21 августа 2009

Это во многом зависит от вашей среды и требований. Есть много бесплатных инструментов, которые вы можете использовать. Одним из примеров является Flot , который позволяет вам использовать jQuery для построения графиков. На странице кода Google есть ссылка на документацию.

...