Bonjour,
j'utilise PostgreSQL et postgis. Je fais une requête toute simple en utilisant PDO comme ci-dessous :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
try
{
    $connexion->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    $query = $connexion->prepare('SELECT * FROM departements');
    $query->execute();
 
    while ($enreg = $query->fetch())
    {
         print_r($enreg);
    }
}
Problème : le résultat va s'afficher en double. Je vais avoir :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
[id] => 1
[0] => 1
[id_geofla] => DEPARTEM0000000000000001
[1] => DEPARTEM0000000000000001
[code_dept] => 69
[2] => 69
[nom_dept] => RHONE
[3] => RHONE
[nom_chf] => LYON
[4] => LYON
...
Je ne comprends pas ce que sont ces colonnes [0], [1], [2]... et pourquoi elles apparaissent ici alors qu'elles ne sont pas présentes dans ma table. D'ailleurs, la même requête dans pgAdmin ne m'affiche pas ces colonnes supplémentaires. De même, en me connectant avec pg_connect, comme suivant, je n'ai pas ces colonnes supplémentaires, j'ai un résultat logique :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
$connexion = pg_connect("dbname='xxxx' user='xxxxxx' password='xxxxx' host='localhost'");
$query = pg_query($connexion , 'SELECT * FROM departements');
while ($enreg = pg_fetch_assoc($query))
{
    print_r($enreg);
}
Le code précédent me donne bien :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
[id] => 1
[id_geofla] => DEPARTEM0000000000000001
[code_dept] => 69
[nom_dept] => RHONE
[nom_chf] => LYON
...
Pourquoi ces colonnes, qui me double le résultat, s'affichent juste en utilisant PDO ?
Je précise que j'ai plus souvent l'habitude d'utiliser mysql d'où une question peut-être naïve.

Merci !
Maxime