donglian8407 2012-07-03 22:03
浏览 89
已采纳

使用json_encode将数组从PHP传递到JavaScript显示空值

I'm using the following code to send an array from PHP to JavaScript, but it doesn't seem to work using json_encode(). Here's my code:

In PHP:

$arr = array();
while($row = mysql_fetch_assoc($result)) {
    $arr[] = $row; 
}

In JavaScript:

var test = "<?php echo json_encode($arr); ?>";
alert (test);

Result of var_dump():

array
  0 => 
    array
      'proj_nbr' => string '0111' (length=4)
      'proj_name' => string 'General' (length=7)
  1 => 
    array
      'proj_nbr' => string '' (length=0)
      'proj_name' => string 'New Project' (length=11)

It displays just blank values. My PHP version is 5.3.6.

  • 写回答

1条回答 默认 最新

  • dousu8456 2012-07-06 21:09
    关注

    I figured this out.. My mistake here was the double quotes in javascript var test = "<?php echo json_encode($arr); ?>";

    should be var test = <?php echo json_encode($arr); ?>;

    also changed mysql_fetch_assoc to mysql_fetch_row.

    But the data is not in array format. I got data in this format (0111,General,). I need data in array format. Any suggestions?

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?