Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/292.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将数组从PHP传递到Javascript_Javascript_Php_Mysqli - Fatal编程技术网

将数组从PHP传递到Javascript

将数组从PHP传递到Javascript,javascript,php,mysqli,Javascript,Php,Mysqli,我试图传递一个PHP数组,然后在JavaScript中使用该数组 我使用的PHP代码如下所示: <?php $link = mysqli_connect("localhost", "root", "password", "database"); /* check connection */ if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()

我试图传递一个PHP数组,然后在JavaScript中使用该数组

我使用的PHP代码如下所示:

<?php

$link = mysqli_connect("localhost", "root", "password", "database");

    /* check connection */
    if (mysqli_connect_errno()) {
        printf("Connect failed: %s\n", mysqli_connect_error());
        exit();
    }

    $query = "SELECT * FROM Employees";

    if ($result = mysqli_query($link, $query)) {

        /* fetch associative array */
        while ($row = mysqli_fetch_assoc($result)) {

            $data[] = $row;
        }
        print_r($row);
        /* free result set */
        mysqli_free_result($result);
    }
    /* close connection */
    mysqli_close($link);

//convert the PHP array into JSON format, so it works with javascript
$json_array = json_encode($data);
?>

JavaScript:

<script> 
    var array = <?php echo $data; ?>; 
    console.log(array); 
</script>

变量数组=;
console.log(数组);
PHP中的
数据数组
似乎没有传递给Javascript
var数组
。查看firebug上的控制台时,会显示以下错误消息:

注意-数组到字符串的转换


我真的非常感谢任何关于为什么会发生此错误的帮助。

可能是因为您回送的是数组而不是json编码的字符串

用这个

<script> var array = <?php echo $json_array; ?>;
console.log(array); </script>
var数组=;
console.log(数组);

我认为应该是:

<script> var array = <?php echo $json_array; ?>;
console.log(array); </script>
var数组=;
console.log(数组);

在$data中使用json_encode,但在代码中没有使用该变量。可能是这样吗?

您可以发布此代码的呈现版本吗?您需要
echo$json\u数组
回显$data不应该是
?谢谢大家!这是一个非常愚蠢的错误,我会把它归咎于疲劳。