2016-09-30 93 views
0

我使用dygraphs繪製的圖形循環。我正在使用數據庫來存儲我需要的所有值。要使用dygraphs我必須使用JavaScript。但是從數據庫中獲取的數據需要動態填充dygraphs構造函數。我可以這樣做,但那不是動態的,也不是我需要的。用PHP在PHP-聲明封裝在JavaScript

<script type="text/javascript"> 
     g = new Dygraph(
      document.getElementById('graphdiv'), 
      "Travel(mm),Force(N)\n"+ 
      "0,0\n"+ 
      "<?php $sql = "SELECT daten FROM azubi3 where pau_table_id=2"; 
        $result = pg_query($sql); 
        $row = pg_fetch_row($result); 
        $toEcho = str_replace("{","[",$row[0]); 
        $toEcho = str_replace("}","]",$toEcho); 
        $toEcho = json_decode($toEcho); 
        echo $toEcho[0][0].','.$toEcho[0][1].'\n'; 
        ?>"+ 
      "<?php echo $toEcho[1][0].','.$toEcho[1][1].'\n';?>"+ 
      "<?php echo $toEcho[2][0].','.$toEcho[2][1].'\n';?>"+ 
      "<?php echo $toEcho[3][0].','.$toEcho[3][1].'\n';?>"+ 
      "<?php echo $toEcho[4][0].','.$toEcho[4][1].'\n';?>"+ 
      "<?php echo $toEcho[5][0].','.$toEcho[5][1].'\n';?>"+ 
      "<?php echo $toEcho[6][0].','.$toEcho[6][1].'\n';?>"+ 
      "<?php echo $toEcho[7][0].','.$toEcho[7][1].'\n';?>"+ 
      "<?php echo $toEcho[8][0].','.$toEcho[8][1].'\n';?>"+ 
      "<?php echo $toEcho[9][0].','.$toEcho[9][1].'\n';?>"+ 
      "<?php echo $toEcho[10][0].','.$toEcho[10][1].'\n';?>"+ 
      "<?php echo $toEcho[11][0].','.$toEcho[11][1].'\n';?>"+ 
      "<?php echo $toEcho[12][0].','.$toEcho[12][1].'\n';?>"+ 
      "<?php echo $toEcho[13][0].','.$toEcho[13][1].'\n';?>"+ 
      "<?php echo $toEcho[14][0].','.$toEcho[14][1].'\n';?>"+ 
      "<?php echo $toEcho[15][0].','.$toEcho[15][1].'\n';?>"+ 
      "<?php echo $toEcho[16][0].','.$toEcho[16][1].'\n';?>"+ 
      "<?php echo $toEcho[17][0].','.$toEcho[17][1].'\n';?>"+ 
      "<?php echo $toEcho[18][0].','.$toEcho[18][1].'\n';?>"+ 
      "<?php echo $toEcho[19][0].','.$toEcho[19][1].'\n';?>"+ 
      "<?php echo $toEcho[20][0].','.$toEcho[20][1].'\n';?>"+ 
      "<?php echo $toEcho[21][0].','.$toEcho[21][1].'\n';?>"+ 
      "<?php echo $toEcho[22][0].','.$toEcho[22][1].'\n';?>"+ 
      "<?php echo $toEcho[23][0].','.$toEcho[23][1].'\n';?>"+ 
      "<?php echo $toEcho[24][0].','.$toEcho[24][1].'\n';?>"+ 
      "<?php echo $toEcho[25][0].','.$toEcho[25][1].'\n';?>" 
     ); 

    </script> 

,因爲我有到單獨的數據「....」 +我不知道如何控制我贊同不亞於我的數組長。我想到了一個包含php的JavaScript代碼循環。它沒有工作。一些想法?或問題,我不知道是否有人會理解我......

+0

使用ajax?然後格式化數據在PHP部分? – Epodax

回答

1

這在我看來就像一個完美的情況下使用的foreach

輸出如下

"123,123\n;"+ 
..... 
"126,143\n;" 

代碼:

$setCount = 0; // keeps track of sets so i dont put a linebreak before the first one 
$toEcho = json_decode($toEcho); 
foreach ($toEcho as $set){ 
    if($setCount>0) echo "+"; // every set is seperated with a plus 
    echo "\""; // put double quote down 
    $valueCount = 0; 
    foreach($set as $value){ 
    if($valueCount>0) echo ','; 
    echo $value; 
    $valueCount++; 
    } 
    echo "\\n;\""; // puts the weird \n into the string and final quote 
    $setCount++; 
} 

讓我知道,如果有什麼不清楚。

+0

我只會粘貼它並嘗試一下:D我得到它應該如何工作... – bloodscript