Привет, я пытаюсь получить данные из базы данных mysql, чтобы создать график флота. Кто-нибудь может пройти через эту процедуру или дать мне представление о том, что делать.
Вы, вероятно, хотите что-то подобное. Я не использовал флот, но я посмотрел на пример здесь .
<?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>
Добавление на примере из @Tom Haigh :
<!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>
как @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'])); } ?>
Это во многом зависит от вашей среды и требований. Там есть много бесплатных инструментов, которые вы можете использовать. Одним из примеров является Flot, который позволяет вам использовать jQuery для построения графиков. Ссылка на документацию на странице Кода Google.