mettre un list de list dans un cookie ?

killmehill
Invité n'ayant pas de compte PHPfrance

07 févr. 2013, 12:44

Bonjour,

je souhaite stocker ça ( $data['config']['config_key'] ) dans un cookie. Comment puis-je le faire ?
Je sais qu'on peut stocker une list et l'utiliser grâce à serialize et unserialize.

ex:
setcookie('configuration', serialize($listEleve), time() + 60*60*12, '/');
echo unserialize($_COOKIE['configuration'];


Cordialement.

ViPHP
xTG
ViPHP | 7331 Messages

07 févr. 2013, 14:27

L'index config_key contient quoi ?
Si c'est un array tu as ta réponse.
Si c'est une string, un chiffre, ect, tu le stockes tout simplement sans serialize.

killmehill
Invité n'ayant pas de compte PHPfrance

07 févr. 2013, 16:18

Non c'est des lists.
Un exemple concret:

on fait une requête sur une table, et on crée un cookie spécifique pour chaque couleur et y mettant une list (content plusieurs mots clés de la couleur sous forme de list).

$q = new Requete("select mot_cle, couleur from parametre_couleur_planning");
while($r = $q->fetch_array()) {
setcookie('configuration[couleur_planning]['.$r['couleur'].']', serialize(explode("\n", $r['mot_cle'])), time() + 60*60*12, '/');
}

dans le cookie on a donc quelque chose comme ça:
en faisant un print_r($_COOKIE['configuration']['couleur_planning']);

Array ( [f9ff73] => a:2:{i:0;s:4:"VST ";i:1;s:3:"vst";} [f85a5a] => a:1:{i:0;s:13:"Sous-effectif";} [f55959] => a:1:{i:0;s:4:"STOP";} [5bc6c6] => a:1:{i:0;s:4:"INFO";} [9ba0a0] => a:1:{i:0;s:6:"ANNULE";} [dfffff] => a:2:{i:0;s:4:"ora ";i:1;s:3:"sql";} [ebc8d4] => a:1:{i:0;s:9:"progiciel";} [a286b7] => a:1:{i:0;s:7:"windows";} [34d02d] => a:1:{i:0;s:24:"premiere_entree_planning";} )


Et j'arrive pas à trouver comme transformer cette liste en list de list:
Array ( [f9ff73] => Array ( [0] => VST [1] => vst ) [f85a5a] => Array ( [0] => Sous-effectif ) [f55959] => Array ( [0] => STOP ) [5bc6c6] => Array ( [0] => INFO ) [9ba0a0] => Array ( [0] => ANNULE ) [dfffff] => Array ( [0] => ora [1] => sql ) [ebc8d4] => Array ( [0] => progiciel ) [a286b7] => Array ( [0] => windows ) [34d02d] => Array ( [0] => premiere_entree_planning ) )


Je sais pas si c'est très clair #-o

killmehill
Invité n'ayant pas de compte PHPfrance

07 févr. 2013, 16:25

Problème résolut.
Vous pouvez lock.
Merci.