Javascript 将PHP数据传递给Ajax响应?

Javascript 将PHP数据传递给Ajax响应?,javascript,php,jquery,ajax,json,Javascript,Php,Jquery,Ajax,Json,我正在使用从internet上找到的脚本来检测访问者的web浏览器详细信息 当我通过ajax调用发送请求时,该脚本就会运行 正如您在php脚本底部看到的,有一个数组 return array( 'userAgent' => $u_agent, 'name' => $bname, 'version' => $version, 'platform' => $platform,

我正在使用从internet上找到的脚本来检测访问者的web浏览器详细信息

当我通过ajax调用发送请求时,该脚本就会运行

正如您在php脚本底部看到的,有一个数组

  return array(
        'userAgent' => $u_agent,
        'name'      => $bname,
        'version'   => $version,
        'platform'  => $platform,
        'pattern'    => $pattern
    );
还有这个

$ua=getBrowser();
$yourbrowser=
 "Your browser: " . $ua['name'] . "
 " . $ua['version'] . " on " .$ua['platform'] . " reports: <br >" . $ua['userAgent'];

print_r($yourbrowser);

您可以将数据作为json进行回显:

echo json_encode($myArray);
然后添加
数据类型:'json'
,并在javascript中按名称访问属性:

dataType: 'json',
success: function(data) { 
    var userAgent = data.userAgent;
    var name = data.name;
    var version = data.version;
}

您可以将数据作为json进行回显:

echo json_encode($myArray);
然后添加
数据类型:'json'
,并在javascript中按名称访问属性:

dataType: 'json',
success: function(data) { 
    var userAgent = data.userAgent;
    var name = data.name;
    var version = data.version;
}

必须将数组编码为json对象

echo json_encode($array);
然后ajax调用将如下所示:

$.ajax({                                      
url: 'analyze.php',    
data: "active=active",
dataType: "json",
success: function(data)
{ 
    var userAgent = data.userAgent;
    var name = data.name;
    var version= data.version;
    ....
}
echo "$u_agent,$bname,$version,$platform,$pattern";

必须将数组编码为json对象

echo json_encode($array);
然后ajax调用将如下所示:

$.ajax({                                      
url: 'analyze.php',    
data: "active=active",
dataType: "json",
success: function(data)
{ 
    var userAgent = data.userAgent;
    var name = data.name;
    var version= data.version;
    ....
}
echo "$u_agent,$bname,$version,$platform,$pattern";

不要让php脚本返回数组,而是让它像这样回显信息:

$.ajax({                                      
url: 'analyze.php',    
data: "active=active",
dataType: "json",
success: function(data)
{ 
    var userAgent = data.userAgent;
    var name = data.name;
    var version= data.version;
    ....
}
echo "$u_agent,$bname,$version,$platform,$pattern";
然后将其转换为数组:

var dataArray = data.split(',');
然后您可以访问每个变量,如下所示:

var userAgent = dataArray[1];
var name = dataArray[2];
var version = dataArray[3];

不要让php脚本返回数组,而是让它像这样回显信息:

$.ajax({                                      
url: 'analyze.php',    
data: "active=active",
dataType: "json",
success: function(data)
{ 
    var userAgent = data.userAgent;
    var name = data.name;
    var version= data.version;
    ....
}
echo "$u_agent,$bname,$version,$platform,$pattern";
然后将其转换为数组:

var dataArray = data.split(',');
然后您可以访问每个变量,如下所示:

var userAgent = dataArray[1];
var name = dataArray[2];
var version = dataArray[3];
在您的.php文件中

header('Content-Type: application/json'); // Set the header type to json at the top of the file.

echo json_encode($array); // Echo out the array as a json-string.
在ajax成功函数中

function (data) {
  var foo = data.bar;
}
在您的.php文件中

header('Content-Type: application/json'); // Set the header type to json at the top of the file.

echo json_encode($array); // Echo out the array as a json-string.
在ajax成功函数中

function (data) {
  var foo = data.bar;
}

当您
console.log(data)
时会得到什么?您可以将其编码为JSON数据并返回该数据。当您
console.log(data)时会得到什么
?您可以将其编码为JSON数据并返回该数据。确保向AJAX调用中添加
数据类型:“JSON”
,以使其工作。确保向AJAX调用中添加
数据类型:“JSON”
,以使其工作。@SLin您的变量$array,这是从哪里来的?我是否应该将我在解释顶部发布的数组存储在$array中
$array=array('userAgent'=>$u\u-agent
等?@AshleyBrown是的,从脚本中获取的数组应该是$array。@在变量$array中,该数组来自何处?我是否应该将我在解释顶部发布的数组存储在$array中?
$array=array('userAgent'=>$u_-agent
etc?@AshleyBrown是的,从脚本获得的数组应该是$array。