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 :

Array avec Mysql


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    412
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Décembre 2008
    Messages : 412
    Points : 79
    Points
    79
    Par défaut Array avec Mysql
    Bonjour,

    Je voudrai modifier un script au niveau de array pour une lecteure de ma basse de données mysql.

    voila ce qu'il avait avant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $hcarray = array ("a"=>"A","b"=>"B","c"=>"C","d"=>"D","e"=>"E","f"=>"F","g"=>"G","h"=>"H","i"=>"I","j"=>"J","k"=>"K","l"=>"L","m"=>"M","n"=>"N","o"=>"O","p"=>"P");
    Voila comment je l'ai modifier
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    $hcarray = array (
          "a"=>"A - $donnees_nom_groupe_module_0["nom_groupe"]",
           "b"=>"B",
           "c"=>"C",
           "d"=>"D",
            "e"=>"E",
            "f"=>"F",
            "g"=>"G",
            "h"=>"H",
             "i"=>"I",
             "j"=>"J",
             "k"=>"K",
             "l"=>"L",
             "m"=>"M",
             "n"=>"N",
             "o"=>"O",
             "p"=>"P");
    Mais dès que j'ajoute
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $donnees_nom_groupe_module_0["nom_groupe"]
    a la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "a"=>"A -$donnees_nom_groupe_module_0["nom_groupe"]",
    la page reste blanche et php m'indique une ereur a la ligne modifier
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    root@debian:~# cat /var/log/apache2/error.log
    [Tue Jul 03 14:35:46 2012] [error] [client 192.168.0.2] PHP Parse error:  syntax error, unexpected '"', expecting T_STRING or T_VARIABLE or T_NUM_STRING in /var/www/X10-Linux/X10/ok/x10-8-son.php on line 217
    J'ai verifier
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo $donnees_nom_groupe_module_0["nom_groupe"];
    il s'affiche correctement sur une ligne vierge.

    Quel est l'erreur que j'ai fait ?
    J'ai du oublier un truc ?

    Pouvez vous m'aider ?
    Merci.

  2. #2
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Il suffit de regarder la coloration "A -$donnees_nom_groupe_module_0["nom_groupe"]", tu n'as pas l'impression que quelque chose cloche dans ta concaténation ?

    Essaye ceci : 'A -'.$donnees_nom_groupe_module_0['nom_groupe']

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    412
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Décembre 2008
    Messages : 412
    Points : 79
    Points
    79
    Par défaut
    Bonjour,

    Si j'ai bien vue la coloration mais je ne suis pas arrivé a faire la concaténation.

    Comme ceci ca marche nickel
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    mysql_query("SET NAMES UTF8");
    $requete_nom_groupe_module_a = mysql_query(" SELECT * FROM $nom_table WHERE id='1' "); // Requête SQL 2
    $donnees_nom_groupe_module_a = mysql_fetch_assoc($requete_nom_groupe_module_a); // liste ce que contient la table
    $requete_nom_groupe_module_b = mysql_query(" SELECT * FROM $nom_table WHERE id='17' "); // Requête SQL 2
    $donnees_nom_groupe_module_b = mysql_fetch_assoc($requete_nom_groupe_module_b); // liste ce que contient la table
    $requete_nom_groupe_module_c = mysql_query(" SELECT * FROM $nom_table WHERE id='33' "); // Requête SQL 2
    $donnees_nom_groupe_module_c = mysql_fetch_assoc($requete_nom_groupe_module_c); // liste ce que contient la table
    $requete_nom_groupe_module_d = mysql_query(" SELECT * FROM $nom_table WHERE id='49' "); // Requête SQL 2
    $donnees_nom_groupe_module_d = mysql_fetch_assoc($requete_nom_groupe_module_d); // liste ce que contient la table
    $requete_nom_groupe_module_e = mysql_query(" SELECT * FROM $nom_table WHERE id='65' "); // Requête SQL 2
    $donnees_nom_groupe_module_e = mysql_fetch_assoc($requete_nom_groupe_module_e); // liste ce que contient la table
    $requete_nom_groupe_module_f = mysql_query(" SELECT * FROM $nom_table WHERE id='81' "); // Requête SQL 2
    $donnees_nom_groupe_module_f = mysql_fetch_assoc($requete_nom_groupe_module_f); // liste ce que contient la table
    $requete_nom_groupe_module_g = mysql_query(" SELECT * FROM $nom_table WHERE id='97' "); // Requête SQL 2
    $donnees_nom_groupe_module_g = mysql_fetch_assoc($requete_nom_groupe_module_g); // liste ce que contient la table
    $requete_nom_groupe_module_h = mysql_query(" SELECT * FROM $nom_table WHERE id='113' "); // Requête SQL 2
    $donnees_nom_groupe_module_h = mysql_fetch_assoc($requete_nom_groupe_module_h); // liste ce que contient la table
    $requete_nom_groupe_module_i = mysql_query(" SELECT * FROM $nom_table WHERE id='129' "); // Requête SQL 2
    $donnees_nom_groupe_module_i = mysql_fetch_assoc($requete_nom_groupe_module_i); // liste ce que contient la table
    $requete_nom_groupe_module_j = mysql_query(" SELECT * FROM $nom_table WHERE id='145' "); // Requête SQL 2
    $donnees_nom_groupe_module_j = mysql_fetch_assoc($requete_nom_groupe_module_j); // liste ce que contient la table
    $requete_nom_groupe_module_k = mysql_query(" SELECT * FROM $nom_table WHERE id='161' "); // Requête SQL 2
    $donnees_nom_groupe_module_k = mysql_fetch_assoc($requete_nom_groupe_module_k); // liste ce que contient la table
    $requete_nom_groupe_module_l = mysql_query(" SELECT * FROM $nom_table WHERE id='177' "); // Requête SQL 2
    $donnees_nom_groupe_module_l = mysql_fetch_assoc($requete_nom_groupe_module_l); // liste ce que contient la table
    $requete_nom_groupe_module_m = mysql_query(" SELECT * FROM $nom_table WHERE id='193' "); // Requête SQL 2
    $donnees_nom_groupe_module_m = mysql_fetch_assoc($requete_nom_groupe_module_m); // liste ce que contient la table
    $requete_nom_groupe_module_n = mysql_query(" SELECT * FROM $nom_table WHERE id='209' "); // Requête SQL 2
    $donnees_nom_groupe_module_n = mysql_fetch_assoc($requete_nom_groupe_module_n); // liste ce que contient la table
    $requete_nom_groupe_module_o = mysql_query(" SELECT * FROM $nom_table WHERE id='225' "); // Requête SQL 2
    $donnees_nom_groupe_module_o = mysql_fetch_assoc($requete_nom_groupe_module_o); // liste ce que contient la table
    $requete_nom_groupe_module_p = mysql_query(" SELECT * FROM $nom_table WHERE id='241' "); // Requête SQL 2
    $donnees_nom_groupe_module_p = mysql_fetch_assoc($requete_nom_groupe_module_p); // liste ce que contient la table
     
    $hcarray = array (		
                      "a"=>'A - '.$donnees_nom_groupe_module_a['nom_groupe'],
                      "b"=>'B - '.$donnees_nom_groupe_module_b['nom_groupe'],
                      "c"=>'C - '.$donnees_nom_groupe_module_c['nom_groupe'],
                      "d"=>'D - '.$donnees_nom_groupe_module_d['nom_groupe'],
                      "e"=>'E - '.$donnees_nom_groupe_module_e['nom_groupe'],
                      "f"=>'F - '.$donnees_nom_groupe_module_f['nom_groupe'],
                      "g"=>'G - '.$donnees_nom_groupe_module_g['nom_groupe'],
                      "h"=>'H - '.$donnees_nom_groupe_module_h['nom_groupe'],
                      "i"=>'I - '.$donnees_nom_groupe_module_i['nom_groupe'],
    		  "j"=>'J - '.$donnees_nom_groupe_module_j['nom_groupe'],
                      "k"=>'K - '.$donnees_nom_groupe_module_k['nom_groupe'],
                      "l"=>'L - '.$donnees_nom_groupe_module_l['nom_groupe'],
                      "m"=>'M - '.$donnees_nom_groupe_module_m['nom_groupe'],
                      "n"=>'N - '.$donnees_nom_groupe_module_n['nom_groupe'],
                      "o"=>'O - '.$donnees_nom_groupe_module_o['nom_groupe'],
                      "p"=>'P - '.$donnees_nom_groupe_module_p['nom_groupe'],);
    Merci.

  4. #4
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    alors ?

  5. #5
    Membre émérite
    Avatar de gene69
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 769
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 769
    Points : 2 446
    Points
    2 446
    Par défaut
    ya pas une erreur ligne 51 ?

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    412
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Décembre 2008
    Messages : 412
    Points : 79
    Points
    79
    Par défaut
    Bonjour,

    Non y pas d'erreur a la ligne 51.

    Merci.

  7. #7
    Expert éminent sénior
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    Mars 2004
    Messages
    6 142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dev indep

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 142
    Points : 16 545
    Points
    16 545
    Billets dans le blog
    12
    Par défaut
    Bonjour,

    @xunil2003
    J'espère que c'était pour rire ton bout de code...

    Je ne peux pas te laisser décemment avec ton "code".

    Tiens ça produit le même résultat mais, comment dire... en plus maintenable :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    mysql_query("SET NAMES UTF8");
     
    $data = array();
    for($k = 'a', $id = 1; $k < 'q'; ++$k, $id += 16) {
        $sql      = "SELECT nom_groupe FROM $nom_table WHERE id=$id";
        $qry      = mysql_query($sql);
        $groupe   = mysql_result($qry, 0);
        $data[$k] = strtoupper($k).' - '.$groupe;
    }
    Allez bon courage.

  8. #8
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    412
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Décembre 2008
    Messages : 412
    Points : 79
    Points
    79
    Par défaut
    Bonjour,

    la j'ai pas compris

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    mysql_query("SET NAMES UTF8");
     
    $data = array();
    for($k = 'a', $id = 1; $k < 'q'; ++$k, $id += 16) {
        $sql      = "SELECT nom_groupe FROM $nom_table WHERE id=$id";
        $qry      = mysql_query($sql);
        $groupe   = mysql_result($qry, 0);
        $data[$k] = strtoupper($k).' - '.$groupe;
    }
    car si il y a rien dans genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    array (		
                      "a"=>'A - '.$donnees_nom_groupe_module_a['nom_groupe'],
                      "b"=>'B - '.$donnees_nom_groupe_module_b['nom_groupe'],
                      "c"=>'C - '.$donnees_nom_groupe_module_c['nom_groupe'],
                      "d"=>'D - '.$donnees_nom_groupe_module_d['nom_groupe'],
                      "e"=>'E - '.$donnees_nom_groupe_module_e['nom_groupe'],
                      "f"=>'F - '.$donnees_nom_groupe_module_f['nom_groupe'],
                      "g"=>'G - '.$donnees_nom_groupe_module_g['nom_groupe'],
                      "h"=>'H - '.$donnees_nom_groupe_module_h['nom_groupe'],
                      "i"=>'I - '.$donnees_nom_groupe_module_i['nom_groupe'],
    		  "j"=>'J - '.$donnees_nom_groupe_module_j['nom_groupe'],
                      "k"=>'K - '.$donnees_nom_groupe_module_k['nom_groupe'],
                      "l"=>'L - '.$donnees_nom_groupe_module_l['nom_groupe'],
                      "m"=>'M - '.$donnees_nom_groupe_module_m['nom_groupe'],
                      "n"=>'N - '.$donnees_nom_groupe_module_n['nom_groupe'],
                      "o"=>'O - '.$donnees_nom_groupe_module_o['nom_groupe'],
                      "p"=>'P - '.$donnees_nom_groupe_module_p['nom_groupe'],);
    rien ne s'affiche dans le menu déroulant ?

    Menu déroulant et bouton validation submit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
        <td colspan="3" valign="middle" class="noborder4"><form id="homecode" name="homecode" method="post" action="<?php echo $selfscript; ?>">
            <label><span class="listitem">Code maison</span><span class="listitem">
            <select name="homecode">
            <?php foreach ($hcarray as $hcvalue => $hcname) {
       			if ($hcvalue == $homecode) {
    				echo "<option value=\"$hcvalue\" selected=\"selected\">$hcname</option>\n";
    			} else {
    		    	echo "<option value=\"$hcvalue\">$hcname</option>\n";
    			}
    		}
       		?>
            </select>
            </span></label>
            <span class="listitem">
            <input name="Change" type="submit" id="Change" value="changer" />
            </span>
    Merci.

  9. #9
    Expert éminent sénior
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    Mars 2004
    Messages
    6 142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dev indep

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 142
    Points : 16 545
    Points
    16 545
    Billets dans le blog
    12
    Par défaut
    Oui j'avais pas fais gaffe au nom de variable que tu avais utilisé : $hcarray et moi j'ai mis $data.
    Essaies avec ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $hcarray = array();
    for($k = 'a', $id = 1; $k < 'q'; ++$k, $id += 16) {
        $sql      = "SELECT nom_groupe FROM $nom_table WHERE id=$id";
        $qry      = mysql_query($sql);
        $groupe   = mysql_result($qry, 0);
        $hcarray[$k] = strtoupper($k).' - '.$groupe;
    }

  10. #10
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    412
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Décembre 2008
    Messages : 412
    Points : 79
    Points
    79
    Par défaut
    Bonsoir,

    Ca marche impec.

    J'avais déjas mis
    avant d'écrire mais ca marché pas, et la j'ai fait un copié collé de votre réponse et ca marche, j'ai du merdé quel que part.
    Je n'aurai pas pensé a faire un bout code comme ceci.

    Merci.

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

Discussions similaires

  1. [MySQL] Problème avec mysql fetch array
    Par berko dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 22/04/2013, 07h24
  2. probleme avec mysql fetch array
    Par philsand77 dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 19/04/2007, 07h56
  3. Help ODBC avec Mysql
    Par Ashura75013 dans le forum Bases de données
    Réponses: 3
    Dernier message: 17/02/2004, 08h11
  4. Probleme avec Mysql
    Par kevinss dans le forum Administration
    Réponses: 5
    Dernier message: 31/10/2003, 10h43
  5. Problème d'insertion avec MySQL
    Par Sonny dans le forum ASP
    Réponses: 13
    Dernier message: 28/08/2003, 13h52

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