web-dev-qa-db-fra.com

Envoyer un tableau de javascript à php par POST dans Joomla 3.x

im essayant d'envoyer un tableau de javascript au fichier php Joomla 3.x.

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

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

Ensuite, j'ai un fichier php qui crée des données afin de télécharger le fichier xlsx. Mais j'ai besoin de filtrer par ce tableau d'options et je ne suis pas en mesure de le récupérer. J'ai essayé sans succès.

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

De l'aide? Merci!

3
Mark Fdez

Vous devez d’abord encoder votre tableau en Javascript, comme ceci:

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

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

Ensuite, dans votre code PHP, utilisez ce qui suit au lieu de $_POST:

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

echo $xlsx->foo;
echo $xlsx->bar;
1
Lodder