2014-02-16 112 views
0

我想从AJAX通过2门阵列(从复选框各自含有值)和一个字符串(从搜索文本框来),以PHPAJAX调用PHP 2个阵列和串

selectedCategories和selectedCompanies是两个阵列 搜索内容是一个字符串

我有一个AJAX调用它看起来像这样,我不知道,如果它看起来正确的,虽然

$.ajax({ 
     type: "POST", 
     data: { 
     'companies' : selectedCompanies; 
     'categories' : selectedCategories; 
     'searchWord' : searchWord; 
     }, 
     url: "php/filteringscript.php", 
     success: function(data){ 
     alert(data); 
     } 
    }); 

和映入职位的PHP文件

$selectedCategories = ""; 
$selectedCompanies = ""; 
$searchWord = ""; 
if(isset($_POST['companies'])){ 
    $selectedCompanies = $_POST['companies'];  
} 
if(isset($_POST['categories'])){ 
    $selectedCategories = $_POST['categories']; 
} 
if(isset($_POST['searchWord'])){ 
    $searchWord = $_POST['searchWord'];  
} 

print_r($selectedCategories); 
print_r($selectedCompanies); 
print_r($searchWord); 

但它不工作,没有东西打印出来。 任何帮助将不胜感激,谢谢!

+1

做的'$ _POST'一个'var_dump'并显示它请。 – idmean

+0

'的print_r($ _ POST)'前'isset()函数'ING,如果无所不有,你会知道这件事情跟你的JavaScript变量是空的。 – MackieeE

+0

如果您收到然后警报尝试打印data.responseText其他使用“错误”和$就“完整”的参数,找出发生了什么事情。 – Masterakos

回答

0
var jsonString1 = JSON.stringify(selectedCompanies); 
var jsonString2 = JSON.stringify(selectedCategories); 
return $.ajax({ 
    type: "POST", 
    url: "php/filteringscript.php", 
    data: {companies : jsonString1, 
      categories : jsonString2, 
      searchWord : searchWord 
      }, 
    cache: false, 

    success: function(data){ 
     alert(data); 
    } 
}); 

在PHP文件:

$companies = json_decode(stripslashes($_POST['companies'])); 
$categories = json_decode(stripslashes($_POST['categories'])); 
$searchWord = $_POST['$searchWord']));