2015-10-13 25 views
2

我使用Dygraph來顯示圖形。我把它靜態這樣工作dygraph php動態生成數據庫中的內容

<div id="graphdiv"></div> 
<script type="text/javascript"> 
    g = new Dygraph(

    // containing div 
    document.getElementById("graphdiv"), 

    // CSV 
    "Date,High,Low\n" + 
    "2015-05-07,75,40\n" + 
    "2015-05-08,70,50\n" + 
    "2015-05-09,80,60\n" + 
"2015-05-10,60,40\n" + 
"2015-05-11,50,30\n" + 
"2015-05-12,0,0\n" 

); 

</script> 

現在我想用PHP動態生成從數據庫中的內容。我試圖這樣做。我創建了關聯數組來從數據庫中獲取信息,然後添加PHP綁定

<?php 
//CREATE SQL STATEMENT 
$sql_temperatures = "SELECT * FROM tbltemperatures"; 

//CONNECT TO MYSQL SERVER 
require('inc-conndygraph.php'); 

//EXECUTE SQL STATEMENT 
$rs_temperatures = mysqli_query($vconndygraph, $sql_temperatures); 

//CREATE AN ASSOCIATIVE ARRAY 
$rs_temperatures_rows = mysqli_fetch_assoc($rs_temperatures); 

?> 
<!doctype html> 
<html> 
<head> 

<!-- LINK TO THE DYGRAPH LIBRARY --> 
<script type="text/javascript" src="dygraph-combined-dev.js"></script> 

</head> 
<body> 

<!-- CONTAINER HOLDING GRAPH --> 
<div id="graphdiv"></div> 

<script type="text/javascript"> 
    g = new Dygraph(

    // containing div 
    document.getElementById("graphdiv"), 

"Date,High,Low\n" + 
    // CSV 
    <?php do { ?> 

    "<?php echo json_encode($rs_temperatures_rows['tdate']); ?>,<?php echo json_encode($rs_temperatures_rows['thigh']); ?>,<?php echo json_encode($rs_temperatures_rows['tlow']); ?>\n" 

    <?php } while ($rs_temperatures_rows = mysqli_fetch_assoc($rs_temperatures)); ?> 

); 
</script> 

從理論上講,這應該在功能正常工作,但是當我嘗試它不會顯示任何瀏覽器來查看它。我錯過了一些愚蠢的東西嗎?

我在想我可能連接不正確,它顯示只是不返回?我不擅長JavaScript和任何幫助,將不勝感激。

回答

0

該做的,而Java腳本內循環應該是這樣的

"Date,High,Low\n" + 

<?php do { ?> 

    "<?php echo $rs_temperatures_rows['tdate'] . ',' . $rs_temperatures_rows['thigh'] . ',' . $rs_temperatures_rows['tlow']; ?>'\n' + 

    <?php } while ($rs_temperatures_rows = mysqli_fetch_assoc($rs_temperatures)); ?> '&nbsp;'