Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.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 在Phonegap中加载JSON?_Php_Jquery_Json_Jquery Mobile_Cordova - Fatal编程技术网

Php 在Phonegap中加载JSON?

Php 在Phonegap中加载JSON?,php,jquery,json,jquery-mobile,cordova,Php,Jquery,Json,Jquery Mobile,Cordova,基本上,我在服务器上有一个php脚本,它生成一个JSON文件,列出mysql数据库中的位置。我正在使用jquerymobile开发一个显示这些地方的应用程序。我的代码在Chrome&Safari中工作,但是当我将其移植到Phonegap时,它就不工作了。我在互联网上搜索过,但找不到答案:( 用于生成JSON的php文件(JSON.php): 我的应用程序中的Javascript文件(加载JSON并显示): $('#places').bind('pageinit',函数(事件){ getPla

基本上,我在服务器上有一个php脚本,它生成一个JSON文件,列出mysql数据库中的位置。我正在使用jquerymobile开发一个显示这些地方的应用程序。我的代码在Chrome&Safari中工作,但是当我将其移植到Phonegap时,它就不工作了。我在互联网上搜索过,但找不到答案:(

用于生成JSON的php文件(JSON.php):


我的应用程序中的Javascript文件(加载JSON并显示):

$('#places').bind('pageinit',函数(事件){
getPlaces();
});
函数getPlaces(){
var输出=$(“#placeList”);
$.ajax({
网址:'http://www.mysite.com/json.php',
数据类型:“jsonp”,
jsonp:'jsoncallback',
超时:5000,
成功:功能(数据、状态){
$。每个(数据、功能(i、项){
变量位置=“
  • ”; 输出。追加(位置); }); $('#placeList')。列表视图('refresh'); }, 错误:函数(){ text('加载数据时出错'); } }); }
    HTML如下所示:

    <div data-role="content">
                <h3>Places</h3>
                <ul data-role="listview" id="placeList" data-inset="true">
    
            </ul>
    </div><!-- /content -->
    
    
    地点
    
    这段代码在Chrome&Safari中工作,但是当在带有Phonegap的xCode模拟器中运行时,它不会加载JSON


    任何帮助都将不胜感激:)

    这可能与白名单有关,苹果不相信任何类型的不可控数据(如iFrame或Feed)。所以他们拒绝所有外部连接


    查看项目根文件夹(xcode)中的phonegap.plist,并将网站url添加到数组“ExternalHosts”中。这可能与白名单有关,苹果不相信任何类型的不可控数据(如iFrame或Feed)。所以他们拒绝所有外部连接


    查看项目根文件夹(xcode)中的phonegap.plist,并将网站url添加到数组“ExternalHosts”中。这可能会在以后正常工作。

    我有一个类似的问题。我还从服务器返回json。我可以手动输入url,它可以在我桌面上的任何浏览器上运行,但如果我在android设备上的移动浏览器中尝试,我会遇到404错误。我也有类似的问题。我还从服务器返回json。我可以手动输入url,它可以在我桌面上的任何浏览器上运行,但如果我在android设备上的移动浏览器中尝试,我会得到404错误。
    $('#places').bind('pageinit', function(event) {
        getPlaces();
    });
    
    
    function getPlaces() {
    
        var output = $('#placeList');
    
        $.ajax({
            url: 'http://www.mysite.com/json.php',
            dataType: 'jsonp',
            jsonp: 'jsoncallback',
            timeout: 5000,
            success: function(data, status){
                $.each(data, function(i,item){
                    var place = '<li><a href="">'+item.name+'<span class="ui-li-count">'
                    + item.checkins+'</span></a></li>';
    
                    output.append(place);
                });
                $('#placeList').listview('refresh');
            },
            error: function(){
                output.text('There was an error loading the data.');
            }
        });
    
    }
    
    <div data-role="content">
                <h3>Places</h3>
                <ul data-role="listview" id="placeList" data-inset="true">
    
            </ul>
    </div><!-- /content -->