par
macgawel » 01 juin 2010, 08:50
echo ($_POST['cacher']);
$a =unserialize($_POST['cacher']);
echo $a[0] ;
Code : Tout sélectionner
a:15:{i:0;s:12:\"ARM_0003.jpg\";i:1;s:1:\"1\";i:2;s:1:\"2\";i:3;s:1:\"3\";i:4;s:5:\"60€\";i:5;s:12:\"ARM_0030.jpg\";i:6;s:1:\"4\";i:7;s:1:\"5\";i:8;s:1:\"6\";i:9;s:6:\"141€\";i:10;s:12:\"ARM_0133.jpg\";i:11;s:1:\"7\";i:12;s:1:\"8\";i:13;s:1:\"9\";i:14;s:6:\"222€\";}
Bonjour.
1. Pour du code php, merci d'utiliser plutôt les balises
, c'est plus clair.
2. Si je comprends bien, tu envoies en POST la chaine de cractères sérialisée ?
=> Au cas où tu ne l'as pas remarqué, les apostrophes sont echappées (suite au passage en POST). Du coup, [b]unserialize()[/b] ne reconnaît plus la chaine.
[b]serialize()[/b] sert, à la base, pour stocker un tableau(objet) dans un fichier, pas pour passer un tableau en paramètre.
Trois solutions (enfin, il y a trois solutions qui me viennent à l'esprit) :
- Utiliser autant de champs cachés que de variables, plutôt qu'un seul qui contient le tableau sérialisé.
- Construire toi-même une chaîne au lieu d'utiliser [b]serialize()[/b].
- Utiliser des sessions et stocker le contenu du tableau dedans. Ca me semble la meilleure solution...
[php] echo ($_POST['cacher']);
$a =unserialize($_POST['cacher']);
echo $a[0] ;[/php]
[code]a:15:{i:0;s:12:\"ARM_0003.jpg\";i:1;s:1:\"1\";i:2;s:1:\"2\";i:3;s:1:\"3\";i:4;s:5:\"60€\";i:5;s:12:\"ARM_0030.jpg\";i:6;s:1:\"4\";i:7;s:1:\"5\";i:8;s:1:\"6\";i:9;s:6:\"141€\";i:10;s:12:\"ARM_0133.jpg\";i:11;s:1:\"7\";i:12;s:1:\"8\";i:13;s:1:\"9\";i:14;s:6:\"222€\";}[/code]
Bonjour.
1. Pour du code php, merci d'utiliser plutôt les balises [php], c'est plus clair.
2. Si je comprends bien, tu envoies en POST la chaine de cractères sérialisée ?
=> Au cas où tu ne l'as pas remarqué, les apostrophes sont echappées (suite au passage en POST). Du coup, [b]unserialize()[/b] ne reconnaît plus la chaine.
[b]serialize()[/b] sert, à la base, pour stocker un tableau(objet) dans un fichier, pas pour passer un tableau en paramètre.
Trois solutions (enfin, il y a trois solutions qui me viennent à l'esprit) :
- Utiliser autant de champs cachés que de variables, plutôt qu'un seul qui contient le tableau sérialisé.
- Construire toi-même une chaîne au lieu d'utiliser [b]serialize()[/b].
- Utiliser des sessions et stocker le contenu du tableau dedans. Ca me semble la meilleure solution...