【发布时间】:2011-11-03 07:04:24
【问题描述】:
我是 JSON 新手,但在 PHP 和 javascript 方面有很好的经验。问题很简单,答案可能更简单。我无法将服务器上的 PHP 文件中的数据发送到我在本地拥有的另一个 PHP 文件,该文件将从服务器接收 JSON 格式的数据。我做错了什么?
Javascript 片段(本地)
$(document).ready(function(){
//attach a jQuery live event to the button
$.getJSON('http://www.xpal.com/ws_users.php?action=get_user_data&user_id=33',function(data) {
alert(data); //uncomment this for debug
$('#showdata').html("<p>Username= "+data.username+"<br> Email= "+data.email+"<br> Firstname="+data.firstname+"<br> Lastname="+data.lastname+"</p>");
});
});
PHP Frag(服务器@xpal.com):
$users=新用户;
if($_GET['action']=="get_user_data")
{
$user_id=$_GET['user_id'];
$assoc=array(
"username"=>$users->return_username($user_id),
"email"=>$users->return_user_emailid($user_id),
"firstname"=>$users->return_user_firstname($user_id),
"lastname"=>$users->return_user_lastname($user_id)
);
echo json_encode($assoc);
}
编辑:
错误信息:XMLHttpRequest 无法加载 xpal.com/ws_users.php?action=get_user_data&user_id=33。 Access-Control-Allow-Origin 不允许 Origin localhost。
【问题讨论】:
-
据我所知没有。我跟踪了 URL,得到了一个不错的 JSON 字符串,其中包含用户数据(我希望是测试数据)。究竟出了什么问题。正在发生什么,您预计会发生什么?
-
XMLHttpRequest 无法加载 xpal.com/ws_users.php?action=get_user_data&user_id=33。 Access-Control-Allow-Origin 不允许来源localhost。是我得到的错误。是的,那是一个测试数据库:)
-
这可能是由于您的浏览器的安全策略。请参阅:en.wikipedia.org/wiki/Same_origin_policy
-
啊!我该如何着手解决这个问题?
-
在这里阅读您的 cmets 以获得答案 我不清楚您对 xpal 服务器的访问权限。您是否在/为该服务器进行开发?
标签: php javascript jquery json