我正在尝试使用jQuery的$ getJSON来发送'ids'数组。这是我的jQuery的样子:
var calendarIds = [];
$("#jammer :selected").each(function(i, selected){
calendarIds[i] = $(selected).val();
});
$.getJSON("test.php", {
start: start.getTime() / 1000,
end: end.getTime() / 1000,
calendarid: calendarIds
},
function(a) {
callback(a);
});
而且,当我使用Firebug进行检查时,它会显示正在传递多个值:例如,
http://mydomain.com/test.php?calendarid=3&calendarid=4
然而,当我尝试使用:
加入这个所谓的数组时$comma_separated = join(",", $_GET['calendarid']);
echo $comma_separated;
我得到了:
Warning: join() [function.join]: Invalid arguments passed
而且,如果我只是回显$ _GET ['calendarid'],我得到的,它只会回传最后一个id,例如:
echo $_GET['calendarid']; //echos "4"
关于我做错的任何想法?谢谢!
答案 0 :(得分:3)
网址应该是
http://mydomain.com/test.php?calendarid[]=3&calendarid[]=4
为了让PHP将$ _GET ['calendarid']解析为PHP数组。
将其设置为正确的URL后,您就可以正确使用PHP中的join()。
答案 1 :(得分:3)
回复你对Mauris答案的评论:
在您要发送的参数对象中使用它:
"calendarid[]": calendarIds //
而不是:
calendarid = calendarIds