[英]How to load external JSON data via an ajax call on html page?
[英]ajax, json, external url load data
我有问题,请帮助
我有2个网站,我想互相发送数据
第一个站点:
var site_adres = $(location).attr('href');
var myArray = site_adres.split('/');
var site_adi_al = myArray[2];
$.getJSON('xxx.com/site/admin.php?site_adres='+ site_adi_al +'',
{},
function (data) {
$.each( data, function ( i, val ) {
var id=val['id'];
var site_adi=val['site_adi'];
$(".site_adi").append('<li>'+id+' >> <a href="'+site_adi+'"
target="_blank">'+site_adi+'</a></li>');
});
第二个站点:
$site_adi = $_GET["site_adi"];
/ *查询* /
$query = mysql_query("SELECT * FROM site WHERE site_adi = '$site_adi'");
if ( mysql_affected_rows() ){
$row = mysql_fetch_object($query);
$json = array(
"id" => $row->id,
"site_adi" => $row->site_adi
);
}else{
$json["hata"] = "Nothing !";
}
header("access-control-allow-origin: *");
echo json_encode($json);
结果为零,出了什么问题,请帮助
您有两个基本问题(除了在问题注释中解释的安全性问题之外)。
site_adres
但正在读取$_GET["site_adi"]
。 如果没有显式编写代码以某种方式链接它们,则不能对同一事物使用不同的名称。 data
与$.each( data, function ( i, val ) {
,好像它是对象的数组,但你的PHP只发送单个对象(这是不是在一个数组)。你应该直接访问data
的属性,而不使用each
或val
。 您应该在您的网络服务器上设置CORS,以允许它们相互获取数据,因为您使用的是php,所以我假设您使用的是Apache:
Header set Access-Control-Allow-Origin "*"
将*替换为您其他网站的IP地址,反之亦然。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.