2012-04-19 163 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>