1

blackberry シミュレーターで動作している phonegap プロジェクトに問題があります。バージョンは10です。

phonegap と言うと、Cordova の機能はまだ使っていませんが、そもそも私の単純な JavaScript 関数が機能していません。

Javascript 関数を呼び出すボタン クリックがあります。この JS 関数には、データを取得するための URL として PHP があります。以下は機能コードです -

function getAllDetails() {
  var myTable = '';
    myTable += '<table id="myTable" cellspacing=0 cellpadding=2 border=1>';
    myTable += "<tr><td><b>S.No.</b></td><td><b>Full Name</b></td><td><b>DOB</b></td><td><b>Gender</b></td><td><b>Address</b></td><td><b>Image</b></td><td><b>Video</b></td></tr>";
    var url = "http://XXX.XXX.XX.XX:XX/PG_crud_experiment1/retrieve_all.php";
    $.getJSON(url, function(json) {
                $.each(json, function(i, v) {
                    alert(v.id);
                            myTable += "<tr><td>" + v.id + "</td><td>"
                                    + v.name + "</td><td>" + v.dob
                                    + "</td><td>" + v.address + "</td><td>"
                                    + v.image + "</td></tr>";
                        });

                $("#emp_tb1").html(myTable);
            });
};

ここでの問題は、ボタン クリックが Javascript 関数に入ることですが、PHP ファイルが配置されている URL にアクセスできないというエラーが表示されます。PHP は実際に SELECT SQL を実行し、データベースから値を取得しています。

以下は、BB 10 シミュレーターでの私のエラーのスクリーンショットです。

この問題が発生する理由を誰か教えてください。デバイスで Javascript 機能を実行したり、サーバー上の PHP スクリプトにアクセスしたりする前に、従うべき前提条件/手順はありますか?XXX

4

3 に答える 3

3

解決策は、プロジェクトの config.xml ファイルを編集して、タグを追加すること <access subdomains="true" uri="http://*URI name here*"/>です。その後、Blackberry は別のドメインへのアクセス許可を許可します。

于 2013-05-18T11:29:44.180 に答える
1

これはクロスサイト リクエストの問題である可能性があります。PHP 側が独自のドメイン外からのリクエストを受け入れていないのではないかと考えています。

このヘッダーを PHP ファイルの先頭に配置するのはどうですか?

header('Access-Control-Allow-Origin: *'); 
于 2013-05-17T09:22:05.690 に答える