PHP - passage d'un tableau à deux dimensions

Résolu
Barracuda8 Messages postés 108 Date d'inscription   Statut Membre Dernière intervention   -  
 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.
Configuration: Linux Debian
Mozilla 1.8.1.4

6 réponses

  1. Alain42
     
    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>
    2
  2. Alain42
     
    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
    0
  3. rbn
     
    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
    0
  4. Barracuda8 Messages postés 108 Date d'inscription   Statut Membre Dernière intervention   72
     
    Merci bien à vous deux je vais essayer tout de suite!
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Barracuda8 Messages postés 108 Date d'inscription   Statut Membre Dernière intervention   72
     
    Encore merci à toi,
    c'est très sympa de ta part, je l'ai intégré et il correspond à mes attentes.
    Cordialement,
    Bonne journée
    0
  7. Alain42
     
    Ce fut avec plaisir, le PHP est ma drogue.

    Pour adapter substr($key,0,7)=="tableau") à ton cas va voir la fonction subtr sur php.net
    0