5

Referring to the title. I have an array which I coded like this:-

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

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

Now, how do I pass the $dServer array into a Javascript array?

For example, this array:

var a = new Array();
Thilina Sampath
  • 3,615
  • 6
  • 39
  • 65
Hafiz Abdullah
  • 248
  • 1
  • 5
  • 14

4 Answers4

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>
Paul
  • 139,544
  • 27
  • 275
  • 264
3

Encode it as a json object.

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

<script>
var data = <?=json_encode($arr);?>;
alert(data['entry']);
</script>
Mārtiņš Briedis
  • 17,396
  • 5
  • 54
  • 76
1

Try to get use of ajax request and json_encode.

Second variant

<?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);?>;
Igor
  • 2,619
  • 6
  • 24
  • 36
1

In addition to the ajax / json methods mentioned, you can directly print out the values:

<?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>
DACrosby
  • 11,116
  • 3
  • 39
  • 51