我是JSON新手,但是在PHP和javascript方面有很好的经验。问题很简单,答案可能更简单。我无法将数据从服务器上的PHP文件发送到本地的另一个PHP文件,该文件将从服务器接收JSON格式的数据。我究竟做错了什么?
Javascript Frag(本地)
$(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本地主机。
要使用jsonp,如其他建议所示,您必须输入“ callback =?”。在网址末尾,或使用$ .ajax()并将dataType指定为jsonp。这里的例子。