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 :

Récupérer une colonne de la base de données dans un tableau


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2012
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2012
    Messages : 48
    Points : 15
    Points
    15
    Par défaut Récupérer une colonne de la base de données dans un tableau
    Bonjour,

    Je souhaiterai récupérer les colonnes de ma base de données dans des tableaux respectifs, exemple:
    Dans ma base de données j ai une colonne "Year" et une colonne "Country" je souhaiterai donc avoir, deux tableaux:
    Col_Year[] : contenant toutes les lignes de la base de données avec l'année correspondant à ces commandes (une commande par ligne)
    Col_Country[] : contenant toutes les lignes de la base de données avec le pays correspondant à ces commandes (une commande par ligne)

    Pour cela en surfant sur internet j ai trouvé la fonction php GetCol, qui permet normalement de justement récupérer une colonne d'une DB ...
    Cependant je n'arrive pas à l'utiliser, ça ne marche pas [bawling]

    Donc j espere que vous pourrez m'aider

    Voici mon code:


    Javascript:
    Code javascript : 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
    function ajax_call2(what2do, callback){
    $.ajax({	
    	type: "GET",
    	async: false,
    	dataType: "json",
    	url: "data.php?" + what2do,
    	success: function(json) {
    		callback(json);
    	}
    });		
    };
     
    var Col_BPname = new Array();
    var Col_Country = new Array();
    var Col_Net_EURO = new Array();
    var Col_Month = new Array();
    var Col_Quarter = new Array();
    var Col_Year = new Array();
    var Col_Regions = new Array();
    var Col_Offer_type = new Array();
    var Col_Releas_OXE = new Array();
    var Col_Users_with_sip = new Array();
    var Col_Additionnal_users_OF_1 = new Array();
     
    function GetDataBase() {
    var tab_nomColonne = ["BP_name", "Country", "Net_EURO", "Segment", "Month", "Quarter", "Year", "Regions", "Offer_type", "Releas_OXE", "Users_with_sip", "Additionnal_users_OF_1"];	
    for(var j=0;j<tab_nomColonne.length;j++){
    	url = "colonne=" + tab_nomColonne[j];
    	ajax_call2(url, function(json){
    		window["Col_" + tab_nomColonne[j].toString()] = json['lacolonne'];
    	});	
    }
     
    }
    tab_nomColonne, contient donc la liste de toutes mes colonnes


    php
    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
    $resultat = array();
     
    function DataBase($colonne) {
     
    try{
    	$db = new PDO('mysql:host=localhost;dbname=actis', 'root', '');
    }
    catch (Exception $e){
    	die('Erreur : ' . $e->getMessage());
    }
    $data = array();
    $data =& $db->getCol('SELECT '.$colonne.' FROM `actis_table`', $colonne);
     
    return $data;
    }
     
    if (isset($_GET["colonne"])){
    $colonne = $_GET["colonne"];
    $resultat['lacolonne'] = DataBase ($colonne);		
    }
     
    print json_encode($resultat);

    Je pense que je n'arrive pas a bien utiliser la méthode GetCol, mais je ne trouve pas beaucoup d exemples pour m'aider sur internet, c'est pourquoi je viens vers vous en espérant que vous pourrez m'éclairer=)

    j'ai découvert cette méthode ici:
    http://pear.php.net/manual/fr/packag...mon.getcol.php


    Geoffrey

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Tu n'as pas besoin de passer par une fonction Pear :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $sth = $db->query('SELECT DISTINCT `Year` FROM `actis_table`');
    $Col_Year = $sth->fetchAll(PDO::FETCH_ASSOC);
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2012
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2012
    Messages : 48
    Points : 15
    Points
    15
    Par défaut
    Salut ! Merci pour ta réponse rapide !

    J'ai essayé de mettre ce que tu m'as dit mais ca n'a malheureusement pas l'air de marché non plus ? je l'ai adapté, j ai fait ceci:

    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
    function DataBase($colonne) {
    try{
    	$db = new PDO('mysql:host=localhost;dbname=actis', 'root', '');
    }
    catch (Exception $e){
    	die('Erreur : ' . $e->getMessage());
    }
    $data = array();
    $sth = $db->query('SELECT DISTINCT '.$colonne.' FROM `actis_table`');
    $data = $sth->fetchAll(PDO::FETCH_ASSOC);
     
    return $data;
    }
     
    if (isset($_GET["colonne"])){
    $colonne = $_GET["colonne"];
    $resultat['lacolonne'] = DataBase ($colonne);		
    }
    on est d'accord que mon $data est bien un tableau contenant la liste de toutes les années par exemple de ma colonne ?
    Exemple: data[0] = 2011
    data[1] = 2012
    data[2] = 2011
    ...
    data[1000]= 2011 .... ?


    J'essaye de l'afficher dans un select juste pour tester et pour les valeurs ca me met pour le premier [object Object] et : "undefined" pour les autres.



    Aurais tu une idée du pourquoi et du comment ?



    PS: ce code est donc dans mon fichier php (data.php)
    Et le javascript dans mon fichier index.php

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Comme ça alors :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $sth = $db->query('SELECT DISTINCT '.$colonne.' FROM `actis_table`');
    while ($row= $sth->fetchAll(PDO::FETCH_NUM)) {
      $data[] = $row[0];
    }
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2012
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2012
    Messages : 48
    Points : 15
    Points
    15
    Par défaut
    Merci pour ta réponse une nouvelle fois ! ^^

    il y a une amélioration ! cette fois dans mon select ca affiche bien "2011" pour le premier choix mais pour les autres ca affiche "undefined"

    Est ce lié au fait que tu as mis :

    ????
    En fait je comprend pas pourquoi c'est l'index 0 pour la ligne à chaque fois ?

    J'espere que tu pourras m'aider une nouvelle fois meme si tu m'as deja beaucoup aidé:

    Voila j'ai donc modifié mon code php comme tu me l'a recommandé:

    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
    function DataBase($colonne) {
    try{
    	$db = new PDO('mysql:host=localhost;dbname=actis', 'root', '');
    }
    catch (Exception $e){
    	die('Erreur : ' . $e->getMessage());
    }
    $data = array();
    $row = array();
    $sth = $db->query('SELECT DISTINCT '.$colonne.' FROM `actis_table`');
    while ($row= $sth->fetchAll(PDO::FETCH_NUM)) {
    	$data[] = $row[0];
    }			
    return $data;
    }
     
    if (isset($_GET["colonne"])){
    $colonne = $_GET["colonne"];
    $resultat['lacolonne'] = DataBase ($colonne);		
    }

    Le javascript n'a pas changé:

    Code javascript : 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
    var Col_BPname = new Array();
    var Col_Country = new Array();
    var Col_Net_EURO = new Array();
    var Col_Month = new Array();
    var Col_Quarter = new Array();
    var Col_Year = new Array();
    var Col_Regions = new Array();
    var Col_Offer_type = new Array();
    var Col_Releas_OXE = new Array();
    var Col_Users_with_sip = new Array();
    var Col_Additionnal_users_OF_1 = new Array();
     
    function GetDataBase() {
    var tab_nomColonne = ["BP_name", "Country", "Net_EURO", "Segment", "Month", "Quarter", "Year", "Regions", "Offer_type", "Releas_OXE", "Users_with_sip", "Additionnal_users_OF_1"];	
    for(var i=0;i<tab_nomColonne.length;i++){
    	url = "colonne=" + tab_nomColonne[i];
    	ajax_call2(url, function(json){
    		window["Col_" + tab_nomColonne[i].toString()] = json['lacolonne'];
    	});	
    }
     
    }


    Et je test l'affichage de mes tableaux avec un select que j'ai créé pour autre chose mais la j'ai juste remplacé le tableau de base par Col_Year:

    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    for (i=0; i<BP_name.length; i++){
    	formulaire.select_BPname.options[i+1].value = Col_Year[i];
    	formulaire.select_BPname.options[i+1].text = Col_Year[i];
    }


    Donc apparemment ca rempli que le premier emplacement du tableau .... je ne sais pas si ca vient de la réception (au niveau JS) ou au niveau php.

    :'(


    PS quand je remplace:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    for (i=0; i<BP_name.length; i++){
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    for (i=0; i<Col_Year.length; i++){
    Il affiche que :"2011" donc il considere bien que Col_Year est composé que d'un élément


    Geoffrey

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    En fait je comprend pas pourquoi c'est l'index 0 pour la ligne à chaque fois ?
    0 c'est l'index de la colonne.

    Pour voir un peu plus d'où vient le problème, fais un var_dump($data);
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  7. #7
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2012
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2012
    Messages : 48
    Points : 15
    Points
    15
    Par défaut
    Merci pour l'explication

    En fait je n'ai jamais compris comment débugué ... la par exemple j ai mis

    Dans ma fonction DataBase mais ca ne fait absolument rien

    C'est censé affiché les informations où stp ?

    Sinon pour ma base de données elle est sous cette forme:
    http://gyazo.com/424618c5fde5d30309ddf86e6de5965b

    Quand tu me dis:
    "0 c'est l'index de la colonne."

    Ca veut dire qu'ici j'ai un index 1 jusqu a 12 c bien ca ? c le numéro de la colonne du coup il faudrait que cet index change suivant la valeur de $colonne ?


    Geoffrey

  8. #8
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Ca veut dire qu'ici j'ai un index 1 jusqu a 12 c bien ca ? c le numéro de la colonne du coup il faudrait que cet index change suivant la valeur de $colonne ?
    Non c'est l'index de la colonne dans le résultat de la requête. Ici on demande une seule colonne et la numérotation commence à 0.

    Si le fichier est appellé par Ajax, forcemment on ne voit pas ce qu'il affiche.
    Execute le directement par ton navigateur pour le test.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  9. #9
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2012
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2012
    Messages : 48
    Points : 15
    Points
    15
    Par défaut
    Sincerement désolé d'etre nul mais je comprend pas ce que tu me demande de faire :/

    C'est ca que tu veux dire ?

    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
    function GetDataBase() {
    <?php
    	try{
    		$db = new PDO('mysql:host=localhost;dbname=actis', 'root', '');
    	}
    	catch (Exception $e){
    		die('Erreur : ' . $e->getMessage());
    	}
    	$data = array();
    	$row = array();
    	$sth = $db->query('SELECT DISTINCT Year FROM `actis_table`');
    	while ($row= $sth->fetchAll(PDO::FETCH_NUM)) {
    		$data[] = $row[0];
    	}
    	print var_dump($data);			
    	return $data;
    ?>
    }

    Ca n'affche plus rien du tout la page du site est toute blanche :'(


    En gros tu me dis de mettre mon code dans ma page index.php ?

    Et faire le var_dump ici ? right ?

  10. #10
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    c'est var_dump($data); tout court sans print.

    pas besoin de copier ton code, appelle directement le fichier qui le contient.
    http://tonsite/cettepage.php
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  11. #11
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2012
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2012
    Messages : 48
    Points : 15
    Points
    15
    Par défaut
    ha d'accord merci ! lol, bon j'ai fait ce que tu m'as dit j'ai donc ouvert cette page:

    http://localhost/Actis_Analytics/data.php

    Et il y avait juste ca

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    array
      0 => 
        array
          0 => string '2011' (length=4)
     
    []

    Dans ma page j'ai donc ca: (et d autre fonctions)

    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
    <?php
     
     
    mysql_connect("localhost", "root", "");
    mysql_select_db("actis");
     
    $resultat = array();
     
     
    DataBase("Year");
     
    function DataBase($colonne) {
    try{
    	$db = new PDO('mysql:host=localhost;dbname=actis', 'root', '');
    }
    catch (Exception $e){
    	die('Erreur : ' . $e->getMessage());
    }
    $data = array();
    $row = array();
    $sth = $db->query('SELECT DISTINCT '.$colonne.' FROM `actis_table`');
    while ($row= $sth->fetchAll(PDO::FETCH_NUM)) {
    	$data[] = $row[0];
    }
    var_dump($data);			
    return $data;
    }
     
    if (isset($_GET["colonne"])){
    $colonne = $_GET["colonne"];
    $resultat['lacolonne'] = DataBase ($colonne);		
    }

    Comme on l'avait deviné, le tableau ne comporte donc qu'un seul emplacement


    Geoffrey

  12. #12
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2012
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2012
    Messages : 48
    Points : 15
    Points
    15
    Par défaut
    A l'aide de d'autres personnes je suis arrivé à ceci:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    function DataBase($colonne) {
            try {
                    $db = new PDO('mysql:host=localhost;dbname=actis', 'root', '');
            }
            catch (Exception $e){
                    die('Erreur : ' . $e->getMessage());
            }
     
            $sth = $db->query('SELECT DISTINCT ' . $db->quote($colonne) . ' FROM `actis_table`');
            return $sth->fetchAll(PDO::FETCH_COLUMN);
    }
     
    var_dump (DataBase("Year"));
    Mais c'est pareil ca ne marche pas


    Pas d'idées ?

  13. #13
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Test la requête dans PHPmyadmin déjà.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  14. #14
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2012
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2012
    Messages : 48
    Points : 15
    Points
    15
    Par défaut
    Merci de ta réponse !

    Je suis vraiment débutant je sais pas comment on fait ca :'(

    Je dois aller la surement:
    http://gyazo.com/ed1bb814d9bc4bfa8d2377e696a60bc8

    Mais j'ai jamais utilisé ça

    Donc je ne sais pas ce que tu veux que je rentre, par curiosité, j'ai essayé:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT Year FROM `actis_table`
    Ca m'affiche bien toute ma colonne

    Et j'ai essayé:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT DISTINCT Year FROM `actis_table`
    Et la ca ne m'affiche qu'une ligne


    J'ai donc essayé ca :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    function DataBase($colonne) {
    	try {
    		$db = new PDO('mysql:host=localhost;dbname=actis', 'root', '');
    	}
    	catch (Exception $e){
    		die('Erreur : ' . $e->getMessage());
    	}
     
    	$sth = $db->query('SELECT ' . $db->quote($colonne) . ' FROM `actis_table`');
    	return $sth->fetchAll(PDO::FETCH_COLUMN);
    }
     
    var_dump (DataBase("Year"));

    et ca m'a donné:
    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
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    array
      0 => string 'Year' (length=4)
      1 => string 'Year' (length=4)
      2 => string 'Year' (length=4)
      3 => string 'Year' (length=4)
      4 => string 'Year' (length=4)
      5 => string 'Year' (length=4)
      6 => string 'Year' (length=4)
      7 => string 'Year' (length=4)
      8 => string 'Year' (length=4)
      9 => string 'Year' (length=4)
      10 => string 'Year' (length=4)
      11 => string 'Year' (length=4)
      12 => string 'Year' (length=4)
      13 => string 'Year' (length=4)
      14 => string 'Year' (length=4)
      15 => string 'Year' (length=4)
      16 => string 'Year' (length=4)
      17 => string 'Year' (length=4)
      18 => string 'Year' (length=4)
      19 => string 'Year' (length=4)
      20 => string 'Year' (length=4)
      21 => string 'Year' (length=4)
      22 => string 'Year' (length=4)
      23 => string 'Year' (length=4)
      24 => string 'Year' (length=4)
      25 => string 'Year' (length=4)
      26 => string 'Year' (length=4)
      27 => string 'Year' (length=4)
      28 => string 'Year' (length=4)
      29 => string 'Year' (length=4)
      30 => string 'Year' (length=4)
      31 => string 'Year' (length=4)
      32 => string 'Year' (length=4)
      33 => string 'Year' (length=4)
      34 => string 'Year' (length=4)
      35 => string 'Year' (length=4)
      36 => string 'Year' (length=4)
      37 => string 'Year' (length=4)
      38 => string 'Year' (length=4)
      39 => string 'Year' (length=4)
      40 => string 'Year' (length=4)
      41 => string 'Year' (length=4)
      42 => string 'Year' (length=4)
      43 => string 'Year' (length=4)
      44 => string 'Year' (length=4)
      45 => string 'Year' (length=4)
      46 => string 'Year' (length=4)
      47 => string 'Year' (length=4)
      48 => string 'Year' (length=4)
      49 => string 'Year' (length=4)
      50 => string 'Year' (length=4)
      51 => string 'Year' (length=4)
      52 => string 'Year' (length=4)
      53 => string 'Year' (length=4)
      54 => string 'Year' (length=4)
      55 => string 'Year' (length=4)
      56 => string 'Year' (length=4)
      57 => string 'Year' (length=4)
      58 => string 'Year' (length=4)
      59 => string 'Year' (length=4)
      60 => string 'Year' (length=4)
      61 => string 'Year' (length=4)
      62 => string 'Year' (length=4)
      63 => string 'Year' (length=4)
      64 => string 'Year' (length=4)
      65 => string 'Year' (length=4)
      66 => string 'Year' (length=4)
      67 => string 'Year' (length=4)
      68 => string 'Year' (length=4)
      69 => string 'Year' (length=4)
      70 => string 'Year' (length=4)
      71 => string 'Year' (length=4)
      72 => string 'Year' (length=4)
      73 => string 'Year' (length=4)
      74 => string 'Year' (length=4)
      75 => string 'Year' (length=4)
      76 => string 'Year' (length=4)
      77 => string 'Year' (length=4)
      78 => string 'Year' (length=4)
      79 => string 'Year' (length=4)
      80 => string 'Year' (length=4)
      81 => string 'Year' (length=4)
      82 => string 'Year' (length=4)
      83 => string 'Year' (length=4)
      84 => string 'Year' (length=4)
      85 => string 'Year' (length=4)
      86 => string 'Year' (length=4)
      87 => string 'Year' (length=4)
      88 => string 'Year' (length=4)
      89 => string 'Year' (length=4)
      90 => string 'Year' (length=4)
      91 => string 'Year' (length=4)
      92 => string 'Year' (length=4)
      93 => string 'Year' (length=4)
      94 => string 'Year' (length=4)
      95 => string 'Year' (length=4)
      96 => string 'Year' (length=4)
      97 => string 'Year' (length=4)
      98 => string 'Year' (length=4)
      99 => string 'Year' (length=4)
      100 => string 'Year' (length=4)
      101 => string 'Year' (length=4)
      102 => string 'Year' (length=4)
      103 => string 'Year' (length=4)
      104 => string 'Year' (length=4)
      105 => string 'Year' (length=4)
      106 => string 'Year' (length=4)
      107 => string 'Year' (length=4)
      108 => string 'Year' (length=4)
      109 => string 'Year' (length=4)
      110 => string 'Year' (length=4)
      111 => string 'Year' (length=4)
      112 => string 'Year' (length=4)
      113 => string 'Year' (length=4)
      114 => string 'Year' (length=4)
      115 => string 'Year' (length=4)
      116 => string 'Year' (length=4)
      117 => string 'Year' (length=4)
      118 => string 'Year' (length=4)
      119 => string 'Year' (length=4)
      120 => string 'Year' (length=4)
      121 => string 'Year' (length=4)
      122 => string 'Year' (length=4)
      123 => string 'Year' (length=4)
      124 => string 'Year' (length=4)
      125 => string 'Year' (length=4)
      126 => string 'Year' (length=4)
      127 => string 'Year' (length=4)
      more elements...

    j'ai ensuite essayé ca:

    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
    var_dump(DataBase("Year"));
     
    function DataBase($colonne) {
    try{
    	$db = new PDO('mysql:host=localhost;dbname=actis', 'root', '');
    }
    catch (Exception $e){
    	die('Erreur : ' . $e->getMessage());
    }
    $data = array();
    $row = array();
    $sth = $db->query('SELECT '.$colonne.' FROM `actis_table`');
    while ($row= $sth->fetchAll(PDO::FETCH_NUM)) {
    	$data[] = $row[0];
    }			
    return $data;
    }
    Et ca m'a donné:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    array
      0 => 
        array
          0 => string '2011' (length=4)
     
    []




    Pourrais tu me dire ce que je dois faire dans phpMyAdmin alors stp ?

  15. #15
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2012
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2012
    Messages : 48
    Points : 15
    Points
    15
    Par défaut
    J'AI TROUVE !!!!!!


    j'ai cherché sur internet a propos de fetchAll(PDO::FETCH_COLUMN)

    Et finalement j'ai apparemment trouvé la solution:

    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
    var_dump(DataBase("Country"));
     
    function DataBase($colonne) {
    	try{
    		$db = new PDO('mysql:host=localhost;dbname=actis', 'root', '');
    	}
    	catch (Exception $e){
    		die('Erreur : ' . $e->getMessage());
    	}
    	$data = array();
    	$sth = $db->prepare('SELECT '.$colonne.' FROM `actis_table`');
    	$sth->execute();
    	$data = $sth->fetchAll(PDO::FETCH_COLUMN, 0);					
    	return $data;
    }
    le var_dump donne:

    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
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    array
      0 => string 'Germany' (length=7)
      1 => string 'Norway' (length=6)
      2 => string 'France' (length=6)
      3 => string 'France' (length=6)
      4 => string 'France' (length=6)
      5 => string 'Martinique' (length=10)
      6 => string 'Martinique' (length=10)
      7 => string 'Germany' (length=7)
      8 => string 'Germany' (length=7)
      9 => string 'Germany' (length=7)
      10 => string 'Germany' (length=7)
      11 => string 'Germany' (length=7)
      12 => string 'Germany' (length=7)
      13 => string 'Germany' (length=7)
      14 => string 'Spain' (length=5)
      15 => string 'France' (length=6)
      16 => string 'France' (length=6)
      17 => string 'France' (length=6)
      18 => string 'France' (length=6)
      19 => string 'France' (length=6)
      20 => string 'France' (length=6)
      21 => string 'Belgium' (length=7)
      22 => string 'Belgium' (length=7)
      23 => string 'Portugal' (length=8)
      24 => string 'Portugal' (length=8)
      25 => string 'Portugal' (length=8)
      26 => string 'Portugal' (length=8)
      27 => string 'Switzerland' (length=11)
      28 => string 'Switzerland' (length=11)
      29 => string 'Italy' (length=5)
      30 => string 'Italy' (length=5)
      31 => string 'France' (length=6)
      32 => string 'Spain' (length=5)
      33 => string 'Spain' (length=5)
      34 => string 'Spain' (length=5)
      35 => string 'Spain' (length=5)
      36 => string 'Spain' (length=5)
      37 => string 'Spain' (length=5)
      38 => string 'Spain' (length=5)
      39 => string 'Spain' (length=5)
      40 => string 'Spain' (length=5)
      41 => string 'France' (length=6)
      42 => string 'Italy' (length=5)
      43 => string 'Italy' (length=5)
      44 => string 'France' (length=6)
      45 => string 'France' (length=6)
      46 => string 'France' (length=6)
      47 => string 'Austria' (length=7)
      48 => string 'Germany' (length=7)
      49 => string 'Germany' (length=7)
      50 => string 'Germany' (length=7)
      51 => string 'Germany' (length=7)
      52 => string 'France' (length=6)
      53 => string 'France' (length=6)
      54 => string 'Italy' (length=5)
      55 => string 'Italy' (length=5)
      56 => string 'Italy' (length=5)
      57 => string 'Italy' (length=5)
      58 => string 'Portugal' (length=8)
      59 => string 'Belgium' (length=7)
      60 => string 'Germany' (length=7)
      61 => string 'Italy' (length=5)
      62 => string 'Ivory Coast' (length=11)
      63 => string 'Panama' (length=6)
      64 => string 'France' (length=6)
      65 => string 'France' (length=6)
      66 => string 'France' (length=6)
      67 => string 'France' (length=6)
      68 => string 'France' (length=6)
      69 => string 'France' (length=6)
      70 => string 'Germany' (length=7)
      71 => string 'France' (length=6)
      72 => string 'France' (length=6)
      73 => string 'France' (length=6)
      74 => string 'France' (length=6)
      75 => string 'France' (length=6)
      76 => string 'France' (length=6)
      77 => string 'France' (length=6)
      78 => string 'France' (length=6)
      79 => string 'France' (length=6)
      80 => string 'France' (length=6)
      81 => string 'France' (length=6)
      82 => string 'France' (length=6)
      83 => string 'France' (length=6)
      84 => string 'Germany' (length=7)
      85 => string 'Netherlands' (length=11)
      86 => string 'Spain' (length=5)
      87 => string 'Spain' (length=5)
      88 => string 'France' (length=6)
      89 => string 'France' (length=6)
      90 => string 'France' (length=6)
      91 => string 'France' (length=6)
      92 => string 'Austria' (length=7)
      93 => string 'Austria' (length=7)
      94 => string 'Austria' (length=7)
      95 => string 'Austria' (length=7)
      96 => string 'Austria' (length=7)
      97 => string 'Germany' (length=7)
      98 => string 'Germany' (length=7)
      99 => string 'Germany' (length=7)
      100 => string 'Germany' (length=7)
      101 => string 'Germany' (length=7)
      102 => string 'Germany' (length=7)
      103 => string 'Germany' (length=7)
      104 => string 'Germany' (length=7)
      105 => string 'Spain' (length=5)
      106 => string 'Spain' (length=5)
      107 => string 'France' (length=6)
      108 => string 'France' (length=6)
      109 => string 'France' (length=6)
      110 => string 'France' (length=6)
      111 => string 'France' (length=6)
      112 => string 'France' (length=6)
      113 => string 'France' (length=6)
      114 => string 'France' (length=6)
      115 => string 'France' (length=6)
      116 => string 'France' (length=6)
      117 => string 'France' (length=6)
      118 => string 'France' (length=6)
      119 => string 'France' (length=6)
      120 => string 'France' (length=6)
      121 => string 'France' (length=6)
      122 => string 'France' (length=6)
      123 => string 'France' (length=6)
      124 => string 'Italy' (length=5)
      125 => string 'Italy' (length=5)
      126 => string 'Italy' (length=5)
      127 => string 'Poland' (length=6)
      more elements...
    Exactement ce que je voulais quoi :O !

    MERCI beaucoup pour ton aide parce que moi au départ j'étais parti avec mon GetCol .... -_-


    Si jamais j'aimerai bien quand meme que tu me dises ce que tu voulais que je fasse sur PhpMyAdmin si jamais ca peut m'aider pour le futur quand je veux debugger =)


    Geoffrey

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

Discussions similaires

  1. récupérer une valeur de la base de données dans une liste
    Par Marie_7 dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 30/06/2015, 18h46
  2. Comment récupérer une image de la base de données et l'afficher dans un jasper?
    Par MasterMbg dans le forum Interfaces Graphiques en Java
    Réponses: 2
    Dernier message: 16/04/2013, 11h41
  3. [MySQL] Afficher une base de donnée dans un tableau html
    Par Devilju69 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 02/06/2009, 17h19
  4. Réponses: 3
    Dernier message: 10/11/2008, 11h58
  5. récupérer une image de la base de données
    Par ijklm dans le forum Struts 1
    Réponses: 6
    Dernier message: 24/05/2006, 09h59

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