无法从服务器端访问php文件

时间:2013-12-16 09:58:58

标签: php jquery ajax mobile mosync

移动网络应用程序开发的新手...现在我正在努力使用mosync sdk连接myphpadmin ...

$(document).ready(function () {
    $.ajax({
        url: "http://192.168.2.136:80/ajaxjson/gene.php",
        dataType: 'text',
        success: function (output) {
            var i = $.parseJSON(output);
            //  $('#one').append('<p style="font-weight:bold">NEWS LETTER</P>');
            for (var j = 0; j < i.length; j++) {
                var title_temp = i[j].Title;
                var title_resized = title_temp.substring(0, 30);
                title_resized = title_resized + "...";

                $('#one').append('<div><p><span style="font-weight:bold" >TITLE</span> &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp: &nbsp; &nbsp;<small><a href=' + i[j].links + '>' + title_resized + '</a></small><br><span style="font-weight:bold" >SOURCE</span> &nbsp; &nbsp;&nbsp;&nbsp; :  &nbsp; &nbsp;' + i[j].Source +
                    '<br><span style="font-weight:bold" >CATEGORY</span> &nbsp;: &nbsp; &nbsp;' + i[j].Category + '<hr><p></div>');
                //$('#one').append('<p><div style="background-color:#ccc"><span style="font-weight:bold" >SOURCE</span> &nbsp; &nbsp;&nbsp;&nbsp; :  &nbsp; &nbsp;'+i[j].Source+'<p>');
                //$('#one').append('<p><div style="background-color:#ccc" onclick="get"><span style="font-weight:bold" >CATEGORY</span> &nbsp;: &nbsp; &nbsp;'+i[j].Category+'<hr><p></div>');
            }
        },
        erro: function (xhr, ajaxOptions, thrownError) {
            alert(xhr.statusText);
            alert(thrownError);
        }
    });
});

问题:我把gene.php文件放在localhost中它工作正常,但如果我加载文件是服务器(http://xxxxxx.in/NewsRecord.php)它不能正常工作。我不知道怎么解决这个问题?帮助我提前谢谢

1 个答案:

答案 0 :(得分:0)

实际上我试图从另一台服务器访问文件,没有权限就不可能,浏览器不允许这样做。然后我在回调中使用JSONP解决了这个问题。

其他服务器文件http://xxxxxx.in//NewsRecord.php?callback=

echo $_GET['callback'].'('.json_encode($output).')';

每当我运行此链接时,它都会打印出来 JSONP 数据 ({“result”:“value”})像这样,我将dataType更改为JSONP,现在工作正常

$(document).ready(function () {
    $.ajax({
        url: "http://xxxxxx.in//NewsRecord.php?callback=?",
        dataType: 'jsonp',
        success: function (output) {
              //working now
                    alert(output.result);

}
});