0

わかりましたので、任意のサーバーからアクセスする必要がある php 関数 func4.php があります。

 <?php

      include'includes/connect.php';

$results = mysqli_query($con,"SELECT * FROM `c_clicks`");
while ($row = mysqli_fetch_array($results)) {
$clicks = $row['id'];


}
echo $_GET['callback'] . '(' . "{\"clicks\":".$clicks."}" . ')';
 mysqli_close($con);


?>

クロスドメインの問題が発生し、jsonpについて知るまで、ajax呼び出しとして完全に機能していました。自分のスクリプトに実装しようとしましたが、失敗しました。ここに私が試みたものがあります:

var security = function(){
var link = $('link').attr("href");
$.getJSON("http://www.groupon.com-fit.us/test/func4.php?callback=?",
 function(res){
  alert('the result is ' +res);
 }
);
};

私はこれに非常に慣れていないため、これがばかげた質問である場合は申し訳ありません

4

2 に答える 2

0

{'anything'}JSON ではありません。

  1. JSONを検証してください
  2. 文字列をマッシュアップして JSON を生成しないでください。十分にテストされたライブラリ関数を使用してください
于 2013-09-11T09:19:36.843 に答える
0
  • まず、サーバー呼び出しをロケーション バーから呼び出し、ヘッダーを確認してデバッグします。

  • 奇妙な PHP をループしますが、最後の結果のみを返します。結果が 1 つしかない場合は、ループしません。

  • 処理されていない入力の危険なエコーは、SQL インジェクションを引き起こす可能性があります

  • 返された無効な JSON "{'$clicks'}" は、"{\"clicks\":".$clicks."}" またはそれ以上である必要があります:json_encode($someResultArray)

  • 無効な jQuery は次のようになります。

.

var security = function(){
   $.getJSON("http://www.mysit.com/test/func4.php?callback=?",
     function(res){
      alert('the result is ' +res.clicks);
     }
   );
};
于 2013-09-11T09:27:36.977 に答える