2012-04-19 24 views
5

Riferendosi al titolo. Ho un array che ho codificato in questo modo: -Passare array PHP in array Javascript

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

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

Ora, come faccio a passare il $ dServer array in un array di Javascript?

Per esempio, questa matrice:

var a = new Array(); 
+0

Cosa stai cercando di fare? – wkm

+0

passa tutta la matrice da $ dServer in a. –

+3

Si prega di utilizzare la funzione di ricerca. Circa 1/4 delle domande nella barra laterale "Correlata" rispondono alla tua domanda. – jprofitt

risposta

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

Cercare di ottenere l'uso della richiesta AJAX e json_encode.

seconda variante

<?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

Codifica come oggetto JSON.

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

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

Oltre ai ajax/metodi JSON citati, è possibile stampare direttamente i valori:

<?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>