Отправить массив из javascript в php с помощью POST в Joomla 3.x

im пытается отправить массив из javascript в файл Joomla 3.x php.

var options = ['foo', 'bar'];

$.post('index.php?option=component&view=componentview&Itemid=123&tmpl=component&layout=xlsx', {'xlsx_options': options})

Затем у меня есть php-файл, который создает данные для загрузки xlsx-файла. Но мне нужно отфильтровать этот массив параметров, и я не смог его получить. Я пробовал это без успеха.

$xlsx = $_POST['xlsx_options'];
$xlsx = json_decode($_POST['xlsx_options'], true);
$xlsx = JFactory::getApplication()->input->get('xlsx_options');

Любая помощь? Спасибо!

2 голоса | спросил Mark Fdez 26 PMpWed, 26 Apr 2017 18:35:31 +030035Wednesday 2017, 18:35:31

1 ответ


0

Сначала вам нужно закодировать свой массив в Javascript, например:

var options = JSON.stringify(['foo', 'bar']);

$.post('index.php?option=component&view=componentview&Itemid=123&tmpl=component&layout=xlsx&options=' + options);

Затем в вашем PHP-коде используйте вместо $_POST:

$input = JFactory::getApplication()->input;
$xlsx  = json_decode($input->get('xlsx_options'));

echo $xlsx->foo;
echo $xlsx->bar;
ответил Lodder 26 PMpWed, 26 Apr 2017 19:23:35 +030023Wednesday 2017, 19:23:35

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

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132