OVH Cloud OVH Cloud

Transmettre les valeurs d'un tableau

2 réponses
Avatar
-= Cyriloch=-
Bonjour & excellente semaine à tous !

Je ne parviens pas à transmettre les valeurs d'un tableau (ci-après
$ArtRef) comme champ caché d'un formulaire, que ce soit de cette façon :

<input type=\"hidden\" name=\"ArtRef\" value=\"$ArtRef\">

ou de celle ci :
<input type=\"hidden\" name=\"ArtRef[i]\" value=\"$ArtRef[i]\">

J'ai pallié le problème en les passant comme variable de session, ce qui
fonctionne très bien, mais je demandais s'il n'y avait pas plus simple
et plus correct.

Pour information, la structure de mon script est la suivante :

if (isset($Submit2))
{
// C'est ici que je souhaite récupérer les valeurs du tableau
}
else
{
if (isset($Submit1))
{
// C'est ici que les valeurs du tableau sont définies
}
else
{

}
}

Avec mes remerciements,

Cordialement,


-= Cyriloch = -
cyriloch@gmail.com

2 réponses

Avatar
clifden

J'ai pallié le problème en les passant comme variable de session, ce qui
fonctionne très bien, mais je demandais s'il n'y avait pas plus simple
et plus correct.

Pour information, la structure de mon script est la suivante :



Passer les données par session est un bon moyen, puisque cela évite que
l'internaute mette "son nez" dans le contenu de la variable, avec
eventuellement le problème qu'il modifie cette valeur.

Cependant, si tu tiens à passer le tableau dans le FORM,

* Mets toi en mode POST, pour eviter le problème de longueur de donnée
* et fait un
echo "<input type="hidden" name="mon_tableau"
value=".serialize($mon_tableau).">";

dans la page d'arrivée, tu n'as plus qu'a faire:

if (isset($_POST['mon_tableau']])
$mon_tableau=unserialize($_POST['mon_tableau']);

Voili voulou

--
Julien

Avatar
Missions courtes
Bonjour,
Ne serait-ce pas :

$Val = $ArtRef["$i"];
<input type="hidden" name="ArtRef[$i]" value="$Val">

Cordialement.
Michel