массив jQuery флажка, не отправленного в php файл

собрать значение от флажков:

var filtersArray = $("input[@name='filters']:checked").map(function(i,n){
                        return $(n).val();
                    }).get();

Регистрация на php файл

$.post("php/performSearch.php", {
     keywords: $('#keywords').val(), 
     'filters[]': filtersArray}, 
     function(data){
         //alert(data);
     });

Php не получает массив независимо от того, что я делаю к нему, я имею:

$postedKeywords = $_POST['keywords'];
$postedFilters = $_POST['filters[]'];

Ключевые слова отправляются, фильтры [] не. Я попробовал print_r.... никакой результат..

Я попробовал:

foreach($_POST as $val)
    echo $val;

Я получаю значение $ _POST ['ключевые слова'] и Массив за $ _POST ['фильтры'], Таким образом, это отправляется, но по некоторым причинам я не могу использовать значения.

1
задан hakre 25 December 2012 в 01:18
поделиться

2 ответа

Вы пробовали:

$.post(
    'php/performSearch.php', {
        keywords: $('#keywords').val(), 
        filters: filtersArray
    }, 
    function(data) {

    }
);

Будет отправлен запрос POST, который может выглядеть следующим образом:

filters[]=1&filters[]=2
2
ответ дан 3 September 2019 в 01:09
поделиться

Используйте это:

$.post("php/performSearch.php", {
     keywords: $('#keywords').val(), 
     'filters\[\]': filtersArray}, 
     function(data){
         //alert(data);
     });

Или попробуйте также:

$.post("php/performSearch.php", {
     keywords: $('#keywords').val(), 
     filters: filtersArray}, 
     function(data){
         //alert(data);
     });

И чтобы войти в php, не используйте [], просто используйте:

$postedKeywords = $_POST['keywords'];
$postedFilters = $_POST['filters'];
0
ответ дан 3 September 2019 в 01:09
поделиться
Другие вопросы по тегам:

Похожие вопросы: