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

PHP & Base de données Discussion :

Différence : tableau statique (hardcodé) et tableau dynamique (mysql) ? [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre habitué
    Inscrit en
    Février 2004
    Messages
    303
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 303
    Points : 143
    Points
    143
    Par défaut Différence : tableau statique (hardcodé) et tableau dynamique (mysql) ?
    Bonjour tout le monde,

    J'ai une différence d'initialisation de la table "$table_ref" entre les deux codes ci-dessous ?
    En fait, j'essaie de le faire dynamiquement (par mysql) donc mon code 'par mysql' doit correspondre au remplissage ($table_ref) du code hardcodé.

    Hélas, je ne parviens pas à corriger le tir, voici mon code !
    Je suis presque sur que le problème se situe dans la boucle while ?!

    par mysql

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $db = mysql_connect('localhost', 'root', 'password'); 
    mysql_select_db('bo',$db); 
    $sql = "SELECT pri_id, pri_name FROM bo_priority" ;
    $result = mysql_query ( $sql ) ;
    $table_ref = array() ;
    while ( $row = mysql_fetch_assoc ( $result ) )
         $table_ref[] = $row;
    ou en script (hardcodé):


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $table_ref = array (
    1 => 'Aucune' ,
    2 => 'Basse' ,
    3 => 'Normale' ,
    4 => 'Haute' 
    ) ;

    Avez-vous une idée?

    Merci d'avance.

    Yves

  2. #2
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 777
    Points
    17 777
    Par défaut
    A tout hasard :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $table_ref[$row['pri_id']] = $row['pri_name'];
    A la place de :
    ?


    Julp.

  3. #3
    Membre habitué
    Inscrit en
    Février 2004
    Messages
    303
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 303
    Points : 143
    Points
    143
    Par défaut
    Hélas, je n'obtiens toujours pas de bon résultat si je fais un "print_r($table_ref)"du tableau. J'obtiens ceci:

    Array ( [0] => Array ( [pri_id] => 1 [pri_name] => Aucune ) [1] => Array ( [pri_id] => 2 [pri_name] => Très basse ) [2] => Array ( [pri_id] => 3 [pri_name] => Basse ) [3] => Array ( [pri_id] => 4 [pri_name] => Normale ) ...
    Normalement, je devrais avoir le contenu suivant:


    Array ( [1] => Aucune [2] => Basse [3] => Normal [4] => ...

  4. #4
    Membre éclairé Avatar de J0r_x
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2006
    Messages
    804
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mai 2006
    Messages : 804
    Points : 751
    Points
    751
    Par défaut
    Bah c'est bon c'est juste que les colones de ton tableaux porte un nom pri_id et pri_name sinon le tableau est bien remplit

  5. #5
    Membre habitué
    Inscrit en
    Février 2004
    Messages
    303
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 303
    Points : 143
    Points
    143
    Par défaut
    Merci pour ta réponse.

    Toutefois que dois-je appliquer à mon code afin que celui-ci donne un résultat identique car j'ai l'impression que code dynamique créé un tableau à deux dimension et si je ne me trompe pas le premier est à une seule dimension ???

    Merci.

    YVes

  6. #6
    Membre averti Avatar de deY!
    Inscrit en
    Avril 2006
    Messages
    403
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Avril 2006
    Messages : 403
    Points : 414
    Points
    414
    Par défaut
    J'aurais fait :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    while ($row = mysql_fetch_assoc ($result)) {
          $table_ref += array($row['pri_id'] => $row['pri_name']);
    }

  7. #7
    Membre habitué
    Inscrit en
    Février 2004
    Messages
    303
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 303
    Points : 143
    Points
    143
    Par défaut
    Je viens juste de trouver, voici le code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    while ( $row = mysql_fetch_assoc ( $result ) )
         $table_ref[$row["pri_id"]] =  $row["pri_name"] ;
    C'est bien un tableau à une dimension !

    Je n'ai pas testé ton code (message précédent).

    Merci à vous tous.

    Yves

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

Discussions similaires

  1. Tableau Dynamique pointant sur Tableau Statiques
    Par ShaiLeTroll dans le forum Langage
    Réponses: 15
    Dernier message: 16/11/2009, 15h56
  2. passage d'un tableau statique à un dynamique
    Par oscar.cesar dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 14/09/2009, 00h08
  3. [Free Pascal] Redimensionner un tableau dynamique en un tableau statique
    Par tekthoninks dans le forum Free Pascal
    Réponses: 5
    Dernier message: 22/03/2009, 23h38
  4. [Tableau] Insérer une ligne dynamique à un tableau statique
    Par michaeljeru dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 11/06/2008, 11h38
  5. char *, string et tableau statique ou dynamique
    Par salseropom dans le forum C
    Réponses: 2
    Dernier message: 05/12/2005, 12h33

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