Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/255.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
通过PHP for dygraph.js从mysql获取csv文件_Php_Mysql_Csv_Dygraphs - Fatal编程技术网

通过PHP for dygraph.js从mysql获取csv文件

通过PHP for dygraph.js从mysql获取csv文件,php,mysql,csv,dygraphs,Php,Mysql,Csv,Dygraphs,我的目标是创建一个网站,用dygraph.js显示mysql数据库中的数据。网站应该在每次打开时加载数据,因为我的Mysql数据库每小时都会收到新数据 我的问题是,我不知道如何创建一个返回csv文件(而不是下载)的PHP站点 基本上我的问题是:是否可以连接mysql和dygraph?如果是,怎么做?好的,我有一个解决方案 对于每个有相同问题的人: 我在glaskugelsehen找到了一个非常好的教程: 它是德语,但是您可以在不理解语言的情况下使用代码 因为教程很旧,我不得不将它翻译成mysql

我的目标是创建一个网站,用dygraph.js显示mysql数据库中的数据。网站应该在每次打开时加载数据,因为我的Mysql数据库每小时都会收到新数据

我的问题是,我不知道如何创建一个返回csv文件(而不是下载)的PHP站点

基本上我的问题是:是否可以连接mysql和dygraph?如果是,怎么做?

好的,我有一个解决方案

对于每个有相同问题的人: 我在glaskugelsehen找到了一个非常好的教程:

它是德语,但是您可以在不理解语言的情况下使用代码 因为教程很旧,我不得不将它翻译成mysqli并做一些小的修改。然后我得到了以下php代码:

<html>
    <head>
        <br>
        <script type="text/javascript"src="libraries/dygraph.min.js"></script>
        <link rel="stylesheet" src="CSS/dygraph.css" />
    </head>
    <body style="color: rgb(0, 0, 0); background-color: rgb(77, 77, 77)" alink="#ee0000" link="#0000ee" vlink="#551a8b">
        <div style="text-align: center;"><span style="color: rgb(255, 255, 255);">Daten aus MySQL<br></span>
            <table style="margin:0px auto" border="0" width="500" align="center">
                <tr>
                    <td style="background-color: #FFFFFF">
                        <div id="graphdiv2"
                             style="width:500px; height:300px;"></div>
                        <script type="text/javascript">

                            g2 = new Dygraph(document.getElementById("graphdiv2"),
                                             <?php
                                             $mysql_host = "****";
                                             $mysql_db = "****";
                                             $mysql_user = "****";
                                             $mysql_pw = "****";
                                             $connection = new mysqli($mysql_host, $mysql_user, $mysql_pw, $mysql_db);   // Check connection
                                             if ($connection->connect_error) {
                                                 die("Connection failed: " . $connection->connect_error);
                                             } 
                                             $abfrage = "SELECT DATE_FORMAT(Zeit, '%Y/%m/%d %H:%i:%s') AS date, Temperatur, Luftfeuchtigkeit FROM messung";
                                             $ergebnis = mysqli_query($connection,$abfrage);

                                             echo "[";                                  // start of the 2 dimensional array
                                             while($row = mysqli_fetch_array($ergebnis))
                                             {
                                                 $utime = strtotime($row[datum]);
                                                 $diffutime = $utime - $lastutime;
                                                 if ($diffutime > 600) {
                                                     echo "["."new Date(\"".$row[date]."\")".",NaN,NaN],";
                                                 }
                                                 else {
                                                     echo "["."new Date(\"".$row[date]."\")".",".$row[Temperatur].",".$row[Luftfeuchtigkeit]."],";
                                                 }
                                                 $lastutime = strtotime($row[datum]);
                                             }
                                             echo "]";
                                             mysqli_close($connection);
                                             ?> ,
                                             { rightGap: 20,
                                             connectSeparatedPoints: true,
                                             labels: [ "Zeit", "Temperatur", "Luftfeuchtigkeit" ] }          // options
                                            );
                        </script>
                    </td>
                </tr>
            </table>
        </div>
    </body>
</html>


Daten aus MySQL
g2=新的动态图(document.getElementById(“graphdiv2”),
你不能这样混合MySQL API。MySQL_*和mysqli_*不能混合。可能是重复的是的。那是因为这是一个我从几个代码片段构建的脚本。它对我有效,我没有找到更好的解决方案。如果你知道一个,如果你和我共享它会很好。你有什么具体的问题?我认为AJAX忽略了
Co内容处置:附件
标题,因此CSV文件应返回到dygraph。如果没有,请尝试忽略该标题。