Forum |  HardWare.fr | News | Articles | PC | Prix | S'identifier | S'inscrire | Shop Recherche
1452 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Données dans tableau après un fetchAll()

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Données dans tableau après un fetchAll()

n°2306070
Furaxx
Posté le 26-09-2017 à 11:40:31  profilanswer
 

Bonjour,
 
J'arrive sans peine à récupérer des données après ma requête avec un "fetchAll()" du résultat.
Le tableau par contre me renvoie les données "en doubles":
 
$requete = $connexionStagiaire->query('SELECT id, nom, prenom FROM ma_table');
$result = $requete->fetchAll();
foreach($result as $key) {
$insert[] = implode(', ', array_values($key));
}
var_dump($insert);
 
Avec ceci, les chaines qui me sont renvoyées sont du type:
'id, id, nom, nom, prenom, prenom'
Or vous vous en doutez, je voudrais quelque chose comme ça:
'id, nom, prenom'
 
Comment faire?
Merci!

mood
Publicité
Posté le 26-09-2017 à 11:40:31  profilanswer
 

n°2306071
pluj
Posté le 26-09-2017 à 13:32:48  profilanswer
 

Si tu as gardé le mode par défaut, PDO::FETCH_BOTH, c'est normal puisque les données, à l'image de mysql_fetch_array, sont présentes deux fois, indexée une fois par le nom de la colonne et une fois par leur position.
 
Remplacer :

Code :
  1. $result = $requete->fetchAll();


Par :

Code :
  1. $result = $requete->fetchAll(PDO::FETCH_ASSOC);


 
Ou alors pour être systématiquement en PDO::FETCH_ASSOC par défaut, faire un :

Code :
  1. $connexionStagiaire->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC);


(ou faire l'équivalent via le 4e paramètre du constructeur de PDO)


Message édité par pluj le 26-09-2017 à 13:35:16
n°2306082
Furaxx
Posté le 27-09-2017 à 08:48:17  profilanswer
 

Ah super, ça marche nickel avec PDO::FETCH_ASSOC
Pas faute de regarder la doc, mais j'étais passé à côté de ce paramètre.
 
Merci!


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Données dans tableau après un fetchAll()

 

Sujets relatifs
Editeur de base de donnéesVBA copier une valeur d'un tableau acces vers un autre sous condition
Importer base de données 1&1Transferer des données d’une table vers une autre table via checkbox
ACCES Base de Données SAP-ASE 16.0 SP 2 via InternetExporter données Python vers Gnuplot
Récupérer des informations dans un tableau HTMLHabiller un tableau résultant d'une requête SQL
Lister les différences de types de données entre les colonnes clésEcrire un tableau dans une feuille de calcul
Plus de sujets relatifs à : Données dans tableau après un fetchAll()


Copyright © 1997-2018 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR