Les champs caches

Eléphant du PHP | 214 Messages

23 oct. 2009, 03:34

Voila le resultat de ton code:
Array ( )

Eléphant du PHP | 369 Messages

23 oct. 2009, 08:53

Salut,
FuZZyLine: A vrai dire je ne copie / colle pas les code, j'essaie de les adapter et les comprendre, je vais le tester en mot a mot et reessayer a nouveau, mais ce que j'ai compris de ton code:
- On tests si c'est un tableau ou string,
- On le seialize,
- On incremente le compteur
- On le stock dans une session pour le passer de page a page,
- On le unserialize,
- On affiche le compteur incrementer.
Alors dans mon cas, quand j'ai fait var_dump, et j'ai teste avec is_string, j'ai recu TRUE, ca veut dire que c'est une string, ce que j'ai pense c'est que serialize et unserialize fonctionne juste avec les tableaux.
Merci
Un modèle est présent pour être étudié et comprendre son fonctionnement.
Si cela avait été un script complêt & finalisé je t'aurai facturé la prestation ;)
Désolé de te l'avoir proposé lol

Piste : Tu dis toi même que ce doit être un Array() donc ton problème est en amont.
C'est au niveau de ton assignation qu'il y a cafouillage. Ta variable disparait donc reprend
"tout" depuis le début et pose des tests...

...Bref, bye.

Eléphant du PHP | 214 Messages

27 oct. 2009, 08:40

Un autre test ici:
// je recupere les donnees de la BD:
extract($rows)
 
// je serialize la donnee dont je veux recupere sur l'autre page (counter)
$counter = serialize($counter);
var_dump($counter); // affiche quelque chose comme: string(8) "s:1:"1";" string(8) "s:1:"1";" string(8) "s:1:"0";" string(8) "s:1:"0";"
 
// ce que je veux passer sur l'autre page est: 1, 1, 0.. la 3eme position apres s
 
echo $counter; // j'affiche mes donnees sur un tableau
 
// ici je construit un formulaire:
echo '<form name="form1" method="post" action="listen.php">
<input name="counter" type="hidden" value="'.$counter.'" >
  <input type="submit" name="Submit" value="go">
</form>';
 
// voila je passe a la page2, listen.php
 
$counter = $_POST["counter"];
var_dump($counter); // NE retourne rien