2012-04-19 192 views
5

引用標題。我有一個數組,我的編碼是這樣的: -將PHP數組傳遞到Javascript數組

$query = "SELECT * FROM server"; 
$result = mysql_query($query); 
$dServer = array(); 

while($row = mysql_fetch_assoc($result)) { 
    $dServer[] = $row['model']; 
}  

現在,我怎麼了$ dServer數組傳遞到Javascript數組?

例如,該陣列:

var a = new Array(); 
+0

你到底想幹什麼? – wkm 2012-04-19 02:00:25

+0

將$ dServer中的所有數組傳遞給一個。 – 2012-04-19 02:01:32

+3

請使用搜索功能。 「相關」邊欄中的大約1/4問題回答您的問題。 – jprofitt 2012-04-19 02:02:38

回答

15
$query = "SELECT * FROM server"; 
$result = mysql_query($query); 
$dServer = array(); 

while($row = mysql_fetch_assoc($result)){ 
    $dServer[] = $row['model']; 
}  

?> 
<script type="text/javascript"> 
    var a = <?php echo json_encode($dServer); ?>; 
</script> 
1

嘗試獲得使用AJAX請求和json_encode的。

第二變型

<?php 
$query = "SELECT * FROM server"; 
$result = mysql_query($query); 
$dServer = array(); 

    while($row = mysql_fetch_assoc($result)) 
     { 
       $dServer[] = $row['model']; 
     }  
?> 
var a = <?php echo json_encode($dServer);?>; 
3

編碼它作爲JSON對象。

<? 
    $arr = array('entry' => 'content'); 
?> 

<script> 
var data = <?=json_encode($arr);?>; 
alert(data['entry']); 
</script> 
1

除了提到的AJAX/JSON方法,可以直接打印出值:

<?php 
    $query = "SELECT * FROM server"; 
    $result = mysql_query($query); 
?> 

<script type="text/javascript"> 
    var a = new Array(); 

<?php 
    while($row = mysql_fetch_assoc($result)){ 
    echo "a['model'] = " . $row['model'] . ";"; 
    echo "a['nextField'] = " . $row['nextField'] . ";"; 
    } 
?> 
</script>