0

こんにちは、次の JavaScript 関数を呼び出して、一部のデータを PHP サーバーに送信しています。しかし、サーバーはデータを受信しません:

function sendData()
{
   var obj = new Object();
   obj.id = "001";
   obj.len = "7";

   $.ajax({
      type: "POST",
      url: "php.php",
      data: JSON.stringify(obj)
      }).done(function( msg ) {
              alert( "Data Saved: " + msg );
      });
}

これは私のphpコードです:

<?php   
   if (!empty($_POST))
   {
      echo $_POST['id'];
   }
   else
      echo "no data"  
?>

どこで間違いを犯しているのか教えてください。私はそれを理解できませんでした!

4

1 に答える 1

1

これが問題を引き起こします

data: JSON.stringify(obj)

そしてそれをに変更します

 data: obj

JQueryドキュメントから:

データ

サーバーに送信されるデータ。まだ文字列でない場合は、クエリ文字列に変換されます。GET リクエストの URL に追加されます。オブジェクトはキーと値のペアである必要があります。値が配列の場合、jQuery は従来の設定の値に基づいて同じキーで複数の値をシリアル化します

参考:http ://api.jquery.com/jQuery.ajax/

于 2013-01-04T03:14:56.587 に答える