PHP - passage d'un tableau à deux dimensions
Résolu
Barracuda8
Messages postés
108
Date d'inscription
Statut
Membre
Dernière intervention
-
Alain42 -
Alain42 -
Bonjour,
Je souhaiterai passer un tableau à deux dimensions entre trois pages PHP, j'ai essayé de le passer par POST et par SESSION mais je n'y arrive pas. Mon tableau ressemble à ceci:
$tab_article = array("numero"=>1, "texte"=>$text);
J'arrive bien à le créer mais pas à le garder de manière convenable entre les pages.
Si quelqun à une idée...
Merci d'avance.
Je souhaiterai passer un tableau à deux dimensions entre trois pages PHP, j'ai essayé de le passer par POST et par SESSION mais je n'y arrive pas. Mon tableau ressemble à ceci:
$tab_article = array("numero"=>1, "texte"=>$text);
J'arrive bien à le créer mais pas à le garder de manière convenable entre les pages.
Si quelqun à une idée...
Merci d'avance.
A voir également:
- PHP - passage d'un tableau à deux dimensions
- Tableau word - Guide
- Trier un tableau excel - Guide
- Tableau ascii - Guide
- Imprimer un tableau excel - Guide
- Tableau croisé dynamique - Guide
6 réponses
Le pb avec serialise c'est que tu vas perdre les cles.
Je t'ai fait un petit script essaye, il fonctionne chez moi:
<html>
<body>
<form method="post" action="passage_tableau.php">
<?php
// tabeau origine
$tableau=array("a"=>"toto","b"=>"tata","c"=>"titi");
echo "Tableau a passer:<br>";
print_r($tableau);
foreach($tableau as $cle=>$valeur){
?>
<input type="hidden" name="<?php echo "tableau_".$cle ?>" value="<?php echo $valeur; ?>" >
<?php
}
?>
<br><br>
<input type="submit" name="Envoi" value=" Envoyer">
</form>
<?php
if(isset($_POST['Envoi'])){
foreach($_POST as $key=>$value){
if(substr($key,0,7)=="tableau"){
$indice=substr($key,8);
$tableau_recu[$indice]=$value;
}
}
echo "<br> tableau reçu:<br>";
print_r($tableau_recu);
}
?>
</body>
</html>
Je t'ai fait un petit script essaye, il fonctionne chez moi:
<html>
<body>
<form method="post" action="passage_tableau.php">
<?php
// tabeau origine
$tableau=array("a"=>"toto","b"=>"tata","c"=>"titi");
echo "Tableau a passer:<br>";
print_r($tableau);
foreach($tableau as $cle=>$valeur){
?>
<input type="hidden" name="<?php echo "tableau_".$cle ?>" value="<?php echo $valeur; ?>" >
<?php
}
?>
<br><br>
<input type="submit" name="Envoi" value=" Envoyer">
</form>
<?php
if(isset($_POST['Envoi'])){
foreach($_POST as $key=>$value){
if(substr($key,0,7)=="tableau"){
$indice=substr($key,8);
$tableau_recu[$indice]=$value;
}
}
echo "<br> tableau reçu:<br>";
print_r($tableau_recu);
}
?>
</body>
</html>
Essaye dans des champs cachés:
foreach ($tab_article as $cle=>$value){
<input type="hidden" name=" tab_article[]" value="<?php echo $tab_article[$cle]; ?>" >
}
et tu récupéres par l'array $_POST en testant le debut du nom.
Je n'ai pas fait l'essai
foreach ($tab_article as $cle=>$value){
<input type="hidden" name=" tab_article[]" value="<?php echo $tab_article[$cle]; ?>" >
}
et tu récupéres par l'array $_POST en testant le debut du nom.
Je n'ai pas fait l'essai
Bonjour, ça doit être faisable avec :
serialize/unserialize
string serialize ( mixed $value )
pour transformer le tableau en chaine
mixed unserialize ( string $str )
pour transformer la chaine en tableau
serialize/unserialize
string serialize ( mixed $value )
pour transformer le tableau en chaine
mixed unserialize ( string $str )
pour transformer la chaine en tableau
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question