IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[Tableaux] Poster un tableau


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de Razgriz
    Profil pro
    Professeur / chercheur en informatique / mathématiques
    Inscrit en
    Avril 2006
    Messages
    391
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Professeur / chercheur en informatique / mathématiques

    Informations forums :
    Inscription : Avril 2006
    Messages : 391
    Par défaut [Tableaux] Poster un tableau
    Bonjour, voilà dans une page php je fais un formulaire dans lequel je crée une variable tableau que je remplis, et je voudrais la récupérer sur une autre page.

    Pour cela j'utilise ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    echo "<input type = 'hidden' name = countAttribute value = $countAttribute>";
    où tablesNames est un tableau. Le problème est que quand je poste la raviable et que j'essaie de la récupérer, le tableau n'est pas celui que je voulais, j'ai tout juste un tableau avec pour éléments les lettres du mot Array.

    Après j'ai essayé autre chose : faire une boucle dans du type :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    for($i = 0 ; $i < sizeof($countAttribute) ; $i++)
         echo "<input type = 'hidden' name = 'countAttribute_'.$i value = $countAttribute[$i]>";
    mais là dans la page de récupération il ne trouve pas les variables postées, par ex $countAttribute_0 me donne juste un undefined Index...

    Comment résoudre mon problème?
    Merci d'avance.

  2. #2
    Membre émérite
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    572
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Juin 2005
    Messages : 572
    Par défaut
    En serializant ton tableau tu peux le passer directement dans un input :
    serialize

    Il te suffit ensuite de faire l'inverse dans ta page de traitement (unserialize).
    Un point fort est que cette méthode conserve les tableaux associatifs

  3. #3
    Membre expérimenté
    Avatar de titoumimi
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    3 707
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 707
    Par défaut
    Bonjour

    Tu devrai jeter un oeil du coté de serialize, qui va bien t'aider
    Globalement inoffensif
    Merci de respecter les règles du forum.
    Aucune question technique par MP !
    _______________________________________________________________________
    Cours Ruby et Ruby on Rails (RoR) - Cours PHP - FAQ Ruby / Rails - Livres Ruby / Rails
    Ajax facile avec Ruby on Rails, Prototype, script.aculo.us et les RJS
    Tutoriaux HTML/CSS et PHP

  4. #4
    Membre éclairé Avatar de Razgriz
    Profil pro
    Professeur / chercheur en informatique / mathématiques
    Inscrit en
    Avril 2006
    Messages
    391
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Professeur / chercheur en informatique / mathématiques

    Informations forums :
    Inscription : Avril 2006
    Messages : 391
    Par défaut
    Ce code-ci devrait normalement fonctionner donc non? :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    echo "<input type = 'hidden' name = 'countAttribute' value = serialize($countAttribute)>";
    et pour le récupérer :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $countAttribute = unserialize($_POST['countAttribute']);
    c'est ça?

    Sinon pourquoi ne peut-on pas passer un tableau directement?

  5. #5
    Membre émérite
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    572
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Juin 2005
    Messages : 572
    Par défaut
    Je te conseille de faire un urlencode/urldecode en plus de la serialization pour éviter tout problème.

    On ne peut pas passer de tableau car pour html un tableau ca ne veut pas dire grand chose

  6. #6
    Membre expérimenté
    Avatar de titoumimi
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    3 707
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 707
    Par défaut
    ce code ne peut pas fonctionner :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo "<input type = 'hidden' name = 'countAttribute' value = serialize($countAttribute)>"
    En effet, le serialize n'est pas interprété par php, seule la variable l'est. Ce qu'il faut que tu fasse, c'est ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $mon_tableau_serialise = serialize($countAttribute);
    echo "<input type = 'hidden' name = 'countAttribute' value='$mon_tableau_serialise'>"
    Sinon, tu peux simplement concaténer :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo '<input type="hidden" name="countAttribute" value="'.serialize($countAttribute).'">'
    Globalement inoffensif
    Merci de respecter les règles du forum.
    Aucune question technique par MP !
    _______________________________________________________________________
    Cours Ruby et Ruby on Rails (RoR) - Cours PHP - FAQ Ruby / Rails - Livres Ruby / Rails
    Ajax facile avec Ruby on Rails, Prototype, script.aculo.us et les RJS
    Tutoriaux HTML/CSS et PHP

  7. #7
    Membre éclairé Avatar de Razgriz
    Profil pro
    Professeur / chercheur en informatique / mathématiques
    Inscrit en
    Avril 2006
    Messages
    391
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Professeur / chercheur en informatique / mathématiques

    Informations forums :
    Inscription : Avril 2006
    Messages : 391
    Par défaut
    oui j'ai vu ça marchait pas j'ai modifié tout de suite ça va maintenant. Mais y a encore un problème (le même type).

    Je crée une variable tableau.
    Dans ce tableau je stocke des tableaux (pour avoir un tableau 2D).
    J'ai donc accès aux éléments du tableau par un truc du style .

    Pour le poster je le sérialize, je le désérialise dans la page de réception, mais là quand je fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    monTableauDésérializé[$i][$j]
    ça ne fonctionne pas, j'ai un undefined offset...

  8. #8
    Membre émérite Avatar de haltabush
    Profil pro
    Développeur Web
    Inscrit en
    Avril 2005
    Messages
    726
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2005
    Messages : 726
    Par défaut
    Toutes les variables passées en POST ou GET sont des strings. C'est plutot logique, puisque quand tu affiche ta source, par exemple, tes valeurs sont du texte, n'est-ce pas?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Tableaux] poster un tableau???
    Par samplaid dans le forum Langage
    Réponses: 2
    Dernier message: 16/03/2006, 16h59
  2. Réponses: 11
    Dernier message: 09/11/2005, 14h59
  3. [Tableaux] submit un tableau de donnee
    Par naourass dans le forum Langage
    Réponses: 6
    Dernier message: 09/11/2005, 11h05
  4. [Tableaux] tri de tableau
    Par rdams dans le forum Langage
    Réponses: 19
    Dernier message: 08/11/2005, 14h46
  5. Réponses: 3
    Dernier message: 26/09/2005, 23h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo