2010-07-22 79 views
0

通过后发送一些数据,但想发送一个数组,但不断收到错误?

排除是我试图发送的数组。

 $.post("/youradmin_v2/scripts/php/process.php", { 
      funcName:'searchContent', 
      table:'content', 
      fields:'title,contentID', 
      keyword:$(this).val(), 
      tag:'option', 
      excludes: ['contentType'=>'client','contentType'=>'mainsetion']     
      }, 
      function(data){ 
      $("#filterContentMenu").html(data); 
     }); 

我似乎无法找到正确的方式来格式化数组发布?

或澄清我想是转成PHP数组这个喜欢

$excludes=array('fieldA'=>'client','feildB'=>'mainsetion') 

foreach($excludes as $value) { 
     $toExclude .=" AND ".$value['name']."!='".$value['value']."' ".$value; 
    } 
+2

*叹*请,请,请,当你得到错误信息,*添加错误信息到您的文章*。 – 2010-07-22 15:58:52

+1

问题标题可能应该是“$ .post variable ...”,因为“$ post variable ...”在这种情况下可能会被误解。 – 2010-07-22 16:02:22

+1

[SQL注入警报](http://unixwiz.net/techtips/sql-injection.html)! – BalusC 2010-07-22 17:06:55

回答

3

使用你似乎使用PHP风格的表示法指定数组键。 尝试

excludes: {'contentType':['client','mainsetion']} 
+0

你需要使用花括号,而不是方括号。在JS中,括号用于数组,而不是对象。还要注意,你可能会用第二个覆盖它;你可能希望它更多地沿着'excludes:{contentType:['client','mainsetion']}'的方向行进。 – 2010-07-22 16:03:02

+0

@Michael很好看。 – 2010-07-22 16:04:15

+0

为什么不编辑你的答案让JS在语法上有效? – BalusC 2010-07-22 17:08:08

3
$.post("/youradmin_v2/scripts/php/process.php", { 
     funcName:'searchContent', 
     table:'content', 
     fields:'title,contentID', 
     keyword:'blah', 
     tag:'option', 
     excludes: {contentType:'client',anotherContentType:'mainsetion'}    
     }, 
     function(data){ 
     $("#filterContentMenu").html(data); 
    }); 
+0

确定该数组停止错误; {contentType:'client',anotherContentType:'mainsetion'} - 谢谢! 但它没有得到我想要的PHP文件的方式。 基本上我试图为sql查询创建一个字符串。 即 “AND的contentType!= '客户' AND的contentType!= '主区'” 。但我得到的是 和c!= 'C' 和M!= 'M' 使用PHP 的foreach($排除作为$值){ \t $ toExclude。=“AND”。$ value ['name']。“!='”。$ value ['value']。“'”; } 你认为我在做什么是可能的吗?!非常感谢! Dan – v3nt 2010-07-22 16:39:33

+0

检查帖子 - 它是“排除[contentType]”等等...也不能使用密钥名称“contentType”两次。我认为你也可以做这样的事情“排除:{contentType:['client','section']}”..只需在你的php中做一个print_r($ _ POST)来找出它通过的内容。 – vinhboy 2010-07-22 16:59:52

+0

感谢vinhboy - 我想我放弃了这个方法。我只是通过jquery使用一个字符串,由于安全问题,我不愿意这样做。 所以; 不包括:“AND contentType!='client'AND contentType!='mainsection'” 感谢您的回复! – v3nt 2010-07-22 17:14:44