Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/9.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 $.ajax值未正确返回_Php_Jquery - Fatal编程技术网

Php $.ajax值未正确返回

Php $.ajax值未正确返回,php,jquery,Php,Jquery,我试图从数据库中获取从PHP数组到JavaScript数组的返回值。 到目前为止,我所做的是以字符串形式返回值,并希望每个值都作为数组 索引 这是我的jQuery AJAX调用: $.ajax({ type: 'GET', url: "Profile_Control.php", data:"ajaxRequest=yes&id="+document.getElementById("compid").value,

我试图从数据库中获取从PHP数组到JavaScript数组的返回值。 到目前为止,我所做的是以字符串形式返回值,并希望每个值都作为数组 索引

这是我的jQuery AJAX调用:

    $.ajax({
          type: 'GET',
          url: "Profile_Control.php",
          data:"ajaxRequest=yes&id="+document.getElementById("compid").value,
          success:function(data)
          {       
              document.getElementById("asd").innerHTML=data;
          }
        });
这是到目前为止我的PHP脚本,它像字符串一样返回值,我想要数组索引中的每个值

   $branches=Profile_Model::getCompanyBranches($_GET['id']);

    while($row=mysql_fetch_array($branches))
    {
        echo $row[3];
    }
现在我只回显从数据库返回的值的第3列,输出如下:

        67.030867.020467.031167.020667.0357
我想要的结果应该是这样的

   arr[0]=67.0308
   arr[1]=67.0204
   arr[2]=67.0311
   arr[3]=67.0206
   arr[4]=67.0357
我还尝试使用
JSON_encode($row[3])用JSON编码数据但它返回以下结果

  "67.0308""67.0204""67.0311""67.0206""67.0357"

使用JS数组中最终需要的元素创建一个数组,然后
json\u encode
该数组:

$rows = array();
while($row=mysql_fetch_array($branches)) {
    $rows[] = $row[3];
}
echo json_encode($rows);

但是,
data
将是成功回调中的一个数组,因此不能简单地将其分配给元素的
innerHTML
属性。但由于这似乎是调试输出,所以只需将其替换为
console.log(数据)

创建一个新数组,每个元素都是
$row[3]
,通过
json\u encode
发送新数组


现在您只需对每个
$row[3]
单独进行json_编码。

您应该使用对象:
数据:{ajaxRequest:'yes',id:blah}
,而不是将字符串传递给
数据。否则,您必须注意对values.thnx进行正确的编码,因为它对回复有效,但是您能否告诉我如何发送
$row[4]
,以及如何从javascript访问它们,因为我需要这两列。这取决于结构。如果需要嵌套数组,请使用
$rows[]=array($row[3],$row[4])
。但是,考虑创建一个有意义键的关联数组:<代码> $Real[] =数组(‘任意’=$$行[3 ],‘WORVER’=> $ROW(4))< /代码>。如果您的列名合适,请使用
mysql\u fetch\u assoc
mysql\u fetch\u object
,只需使用
$rows[]=$row
这样你就能得到你想要的。请注意,JSON对象将包含从数据库获取的所有列。