我通过AJAX发送一些数据到PHP文件。这是关于过滤器选项。无论如何,我发送它是这样的:PHP阵列问题
filter[0][data][type] string
filter[0][data][value] automobiles
filter[0][field] product
filter[1][data][type] numeric
filter[1][data][value] 6000
filter[1][field] price
这上面是从FireBug控制台。然后,在PHP:
$filter = $_POST['filter'.$i];
if (is_array($filter)) {
for ($i=0;$i<count($filter);$i++){
switch($filter[$i]['data']['type']){
case 'string' :
// I'm doing my select from database based on that and so on
所以,这个翻译是: “给我所有的数据库都记录:嗯,让我们检查过滤器 ...我得到第一过滤器类型女巫是“串”女巫需要应用到名为“产品”的MySQL列...所以我正在寻找那里的“汽车”的价值......但我还没有完成,第二个过滤器指的是数据库中“价格”列的数字过滤器,所以我将它的价值和它添加到查询中,所以我最终选择所有价格大于6000的汽车。
到目前为止这么好。问题我我的数据获取方式发生了变化,我无法再以这种格式发送数据。新格式的URL女巫看起来是这样的:
filter[0][field]=prodct&filter[0][data][type]=string&filter[0][data][value]=automobiles&filter[1][field]=price&filter[1][data][type]=numeric&filter[1][data][value]=6000
我能做的就这一个由“&”的爆炸,一个数组结束了......我可以做很多...问题是我不知道如何调整我的查询构建脚本来处理这种类型的接收数据。所以我可以做一个“开关($ filter [$ i] ['data'] ['type']) {“再次...
修改代码的任何想法?
谢谢!
为什么你的数据发送到ajax脚本在url中?你不能发布数据并完全绕过这一步吗? – willoller 2009-01-29 04:21:21