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 :

Passage des données d'un tableau à un autre


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 15
    Points : 11
    Points
    11
    Par défaut Passage des données d'un tableau à un autre
    Bonsoir
    Je sèche avec le passage des données d'un tableau à un autre
    Voici la ligne que je dois construire et qui fonctionne très bien avec des valeurs entrées directement:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $parametre['stages'] = array('20121006' =>'D','20121007' =>'D','20121026' =>'T','20121027' =>'T',);
    Ce sont des dates avec un type de stage.
    Je voudrai dans cette ligne remplacer mes données dates et stage par les valeurs de ma Bdd.
    Les valeurs à remplacer dans ma ligne :

    '20121006' =>'D','20121007' =>'D','20121026' =>'T','20121027' =>'T',

    J'ai assemblé 4 tableaux construits avec ma Bdd avec un array_merge.
    lorsque je fais un list() et un echo de ce tableau j'ai le résultat qui me faut:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    $stage = array_merge($result[1],$result[2],$result[3],$result[4]);
    list($valeur1,$valeur2,$valeur3,$valeur4) = $stage;
    echo $valeur1,$valeur2,$valeur3,$valeur4;
    cela m'affiche ce résultat, exactement ce que cherche:

    '20121006'=>'D','20121007'=>'D','20121026'=>'T','20121027'=>'T',

    ce que je n'arrive pas à faire, c'est incorporer ce résultat dans ma ligne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $parametre['stages'] = array( JE VOUDRAI INCORPORER LE RESULTAT ICI);
    J'ai lu et relu des tonnes de pages sans résultat pour un nul comme moi.
    Si vous avez une solution ce serait sympa.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Pourquoi passer par des array(), array_merge().... alors que tes données proviennent de ta base de données, et que tu pourrais construire ta variable finale directement depuis la BdD ??

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 15
    Points : 11
    Points
    11
    Par défaut
    Parce que je suis nul certainement!
    Cette ligne fonctionnait très bien en mettant des données manuellement. Ensuite, voulant y incorporer des données venant de la Bdd, j’ai voulu ("simplement" à mon idée) remplacer ce qui était entre parenthèses par les données venant de la base.
    Je développe par étapes successives pour résoudre un problème après l’autre.
    Voulant remplacer ces données entre parenthèses par les mêmes données venant de la base, j’ai travaillé cette extraction indépendamment du programme principal à coup de "echo" pour vérifier les résultats, jusqu’à ce que je trouve l’équivalent de ce qui était entre parenthèses. Seuls les tableaux m’ont permis d’y arriver.
    Je vais revoir ma façon de développer cette partie de mon code, et je te remercie de m’avoir ouvert une autre voie.
    Ce qui est surprenant, c’est d’avoir une ligne de données et de ne pas pouvoir l’incorporer dans ma ligne de code, même si ce n’est pas la meilleure méthode de programmation.
    Je te tiens au courant de l’évolution du problème.

  4. #4
    Invité
    Invité(e)
    Par défaut
    Connais-tu ce tableau de Magritte, "La trahison de l'image" ?
    "Ceci n'est pas une pipe"
    Tu cherches à remplacer une chose par une autre, qui lui ressemble mais N'EST PAS la chose elle-même !
    Autrement dit : remplacer la STRUCTURE d'un array par une chaine de caractères qui, c'est vrai, lui "ressemble" à l'écran, mais n'a rien à voir !

    1/ Ce que tu cherches à obtenir :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $parametre['stages'] = array('20121006' =>'D','20121007' =>'D','20121026' =>'T','20121027' =>'T');
    est équivalent à entrer chaque couple "index"/"valeur" :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $parametre['stages'] = array();
    $parametre['stages']['20121006'] =  'D';
    $parametre['stages']['20121007'] =  'D';
    $parametre['stages']['20121026'] =  'T';
    $parametre['stages']['20121027'] =  'T';
    A partir de là, tu peux imaginer la façon de t'y prendre directement depuis un SELECT en BdD.

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 15
    Points : 11
    Points
    11
    Par défaut
    C’est la première fois que je manipule les array et je pensais que tout venait du fait que je ne les maîtrisais, pas sans voir l’impasse dans lequel j’étais. Va falloir que je bûche ça à fond !
    Ta solution va résoudre mon problème. Je m’y atèle de suite. Encore merci.

Discussions similaires

  1. Extraire des données d'un tableau vers un autre onglet
    Par merlinus3000 dans le forum Excel
    Réponses: 3
    Dernier message: 07/06/2015, 20h28
  2. [Débutant] Passage des données d'une GUI à l'autre (GUIDE)
    Par bguy1406 dans le forum Interfaces Graphiques
    Réponses: 4
    Dernier message: 01/04/2014, 19h09
  3. Réponses: 1
    Dernier message: 23/03/2013, 08h51
  4. TRansférer des données d'une table à l'autre
    Par kernel57 dans le forum SQL Procédural
    Réponses: 3
    Dernier message: 06/10/2005, 14h05
  5. Conserver des données d'une page à une autre...
    Par Angeldu74 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 24/08/2005, 14h15

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