亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

PHP MySQL谷歌圖表JSON - 完整示例

PHP MySQL谷歌圖表JSON - 完整示例

猛跑小豬 2019-08-14 17:04:26
PHP MySQL谷歌圖表JSON - 完整示例我已經搜索了很多,以找到一個使用MySQL表數據作為數據源生成Google Chart的好例子。我搜索了幾天,并意識到使用PHP和MySQL的組合生成Google Chart(餅圖,條形圖,列,表)的示例很少。我終于設法讓一個例子起作用了。我之前收到過StackOverflow的很多幫助,所以這次我會回復一些。我有兩個例子; 一個使用Ajax而另一個不使用。今天,我只展示非Ajax示例。用法:    要求:PHP,Apache和MySQL    安裝:      ---使用phpMyAdmin創建數據庫并將其命名為“chart”      ---使用phpMyAdmin創建一個表,并將其命名為“googlechart”并制作           確保表只有兩列,因為我使用了兩列。然而,          如果你愿意,你可以使用超過2列,但你必須改變           為此編寫一點代碼      ---指定列名如下:“weekly_task”和“percentage”      ---將一些數據插入表中      ---對于百分比列,只使用一個數字          ---------------------------------          示例數據:表(googlechart)          ---------------------------------          weekly_task百分比          ----------- ----------          睡30          看電影10          工作40          練習20    PHP-MySQL-JSON-Google圖表示例:    <?php $con=mysql_connect("localhost","Username","Password") or die("Failed to connect with database!!!!");mysql_select_db("Database Name", $con); // The Chart table contains two fields: weekly_task and percentage// This example will display a pie chart. If you need other charts such as a Bar chart, you will need to modify the code a little to make it work with bar chart and other charts$sth = mysql_query("SELECT * FROM chart");/* --------------------------- example data: Table (Chart) -------------------------- weekly_task     percentage Sleep           30 Watching Movie  40 work            44 *///flag is not needed$flag = true;$table = array();$table['cols'] = array(     // Labels for your chart, these represent the column titles     // Note that one column is in "string" format and another one is in "number" format as pie chart only required "numbers" for calculating percentage and string will be used for column title     array('label' => 'Weekly Task', 'type' => 'string'),     array('label' => 'Percentage', 'type' => 'number'));$rows = array();while($r = mysql_fetch_assoc($sth)) {     $temp = array();     // the following line will be used to slice the Pie chart     $temp[] = array('v' => (string) $r['Weekly_task']);
查看完整描述

3 回答

?
慕娘9325324

TA貢獻1783條經驗 獲得超4個贊

有些人可能在本地或服務器上遇到此錯誤:

syntax error var data = new google.visualization.DataTable(<?=$jsonTable?>);

這意味著他們的環境不支持短標簽解決方案是使用它:

<?php echo $jsonTable; ?>

一切都應該工作正常!


查看完整回答
反對 回復 2019-08-14
?
臨摹微笑

TA貢獻1982條經驗 獲得超2個贊

你可以更輕松地做到這一點。100%的工作你想要的

<?php
    $servername = "localhost";
    $username = "root";
    $password = "";  //your database password
    $dbname = "demo";  //your database name

    $con = new mysqli($servername, $username, $password, $dbname);

    if ($con->connect_error) {
        die("Connection failed: " . $con->connect_error);
    }
    else
    {
        //echo ("Connect Successfully");
    }
    $query = "SELECT Date_time, Tempout FROM alarm_value"; // select column
    $aresult = $con->query($query);?><!DOCTYPE html><html><head>
    <title>Massive Electronics</title>
    <script type="text/javascript" src="loder.js"></script>
    <script type="text/javascript">
        google.charts.load('current', {'packages':['corechart']});

        google.charts.setOnLoadCallback(drawChart);
        function drawChart(){
            var data = new google.visualization.DataTable();
            var data = google.visualization.arrayToDataTable([
                ['Date_time','Tempout'],
                <?php                    while($row = mysqli_fetch_assoc($aresult)){
                        echo "['".$row["Date_time"]."', ".$row["Tempout"]."],";
                    }
                ?>
               ]);

            var options = {
                title: 'Date_time Vs Room Out Temp',
                curveType: 'function',
                legend: { position: 'bottom' }
            };

            var chart = new google.visualization.AreaChart(document.getElementById('areachart'));
            chart.draw(data, options);
        }

    </script></head><body>
     <div id="areachart" style="width: 900px; height: 400px"></div></body></html>

loder.js鏈接到這里loder.js


查看完整回答
反對 回復 2019-08-14
  • 3 回答
  • 0 關注
  • 498 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號