私はAJAXを介してサーバー側のPHPスクリプトに配列を送信するjavascriptを持っています。AJAXを介して配列を送信できません
私は以下の私のjavascriptのAJAX機能の関連するコードスニペットを添付しています:
$.ajax({
url: "bar2.php",
type: "POST",
data:{data:x},
dataType: "json",
contentType: "application/json; charset=utf-8",
error: function(xhr, status, error) {
console.log(status);console.log(error);
},
success:function(data){
//do stuff
}
}
);
xは、私が送信しています私の配列です。
下図のように私は私のPHPスクリプトでこの配列にアクセス:
$data = $_REQUEST['data'];
$len = $data.length;
$x=format_array($data);
function format_array($data){
return "'" . implode("', '", $data) . "'";
}
$myquery = "
select state,count(device_id) as c_num from base_data where state
IN($x)group by state order by c_num DESC limit 10;
";
$query = mysql_query($myquery);
しかし、私はそれを実行すると、私はエラーを取得: 警告:破():行に****に渡された無効な引数を16
助けてください。私はこれに1時間を費やしており、それを理解することができません。私は正しい方法でデータを送信していますか?
何か指摘していただければ幸いです。
あなたはその後、PHP(サーバ側)に送信JSONへのあなたの配列を変換する必要が
これは必須ではありません。形式のエンコードされたデータを配列として受け取っても問題ありません – charlietfl
あなたは正しいです! –