Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/294.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
用MySql数据填充JavaScript数组_Javascript_Php_Mysql_Arrays - Fatal编程技术网

用MySql数据填充JavaScript数组

用MySql数据填充JavaScript数组,javascript,php,mysql,arrays,Javascript,Php,Mysql,Arrays,我已经看了很多其他的问题,但是没有得到正确的答案。基本上,我有一个需要MySql数据库数据的数组。以下是我尝试过的: var $name = "Foo", $x = 10, $bar = <? php $barQuery = mysql_query("SELECT item FROM table WHERE name = '$name' AND number = '$x'"); $barArray = array();

我已经看了很多其他的问题,但是没有得到正确的答案。基本上,我有一个需要MySql数据库数据的数组。以下是我尝试过的:

var $name = "Foo",
    $x = 10,
    $bar =
      <? php
        $barQuery = mysql_query("SELECT item FROM table WHERE name = '$name' AND number = '$x'");
        $barArray = array();

        while ($r = mysql_fetch_assoc($barQuery))
        {
          $barArray[] = $r['item'];
        }

        echo json_encode($barArray);
      ?>;

然而,我得到一个错误,说语法错误,意外的T_变量。用这种方式填充JS数组是不可能的,还是有其他方法可以做到这一点?

PHP开始标记中有多余的空间:

var $name = "Foo",
    $x = 10,
    $bar = "
      <?php
        $barQuery = mysql_query("SELECT item FROM table WHERE name = '$name' AND number = '$x'");
        $barArray = array();

        while ($r = mysql_fetch_assoc($barQuery))
        {
          $barArray[] = $r['item'];
        }

        echo json_encode($barArray);
      ?>";

$name、$x和$bar是javascript变量?@AdrianCidAlmaguer YesNote您使用的是一个早就不推荐使用的API@AdrianCidAlmaguer我之所以使用美元符号,是因为我随后使用$.post将此信息发布到另一个.php文件中;您应该将$bar放入,因为这是一个字符串。这会导致任何问题,因为语音标记会取消选择的开始位置。我已经编辑了OP,以显示接下来会发生什么。还需要什么?@MichaelJarvis你有进步吗?总是这么简单。。。谢谢但是,JS控制台中的一个错误是,当我声明$bar@MichaelJarvis:真奇怪。您是否更改了问题中最初的代码?检查PHP输出的JavaScript,从而通过浏览器进行解析;您的JS控制台可能有助于找出问题所在。是的,它是这样说的:$bar=Warning:mysql_fetch_assoc希望参数1是resource,布尔值在/home/page.php第791[]行给出;第791行是while循环的位置begins@MichaelJarvis:这意味着$barQuery为false,因为mysql\u查询失败。您应该检查mysql\u错误。看见
var $name = "Foo",
    $x = 10,
    $bar = "
      <?php
        $barQuery = mysql_query("SELECT item FROM table WHERE name = '$name' AND number = '$x'");
        $barArray = array();

        while ($r = mysql_fetch_assoc($barQuery))
        {
          $barArray[] = $r['item'];
        }

        echo json_encode($barArray);
      ?>";