Bonjour,
Si quelqu'un pouvait me mettre un petit bout de code php me permettant d'afficher le contenu d'une table postgres, ce serait sympa.
J'ai beau tout essayé, je n'arrive qu'à récupérer que la première ligne![]()
Bonjour,
Si quelqu'un pouvait me mettre un petit bout de code php me permettant d'afficher le contenu d'une table postgres, ce serait sympa.
J'ai beau tout essayé, je n'arrive qu'à récupérer que la première ligne![]()
s'il vous plait!!!
voici mon code:
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 <?PHP function toDb($string) { require("error.php"); @$connect = pg_connect("host=sql1.lo-data.net dbname=***** user=***** password=*****"); if(!$connect) error(1); $request = pg_query($connect, $string); while($value = pg_fetch_object($request)): echo $value->login."<br />"; endwhile; if($i==0) error(6); if(!$request) error(2); if(!pg_free_result($request)) error(3); if(!pg_close($connect)) error(4); } ?>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 $myres = pg_query($connect, $string); while ($row = pg_fetch_array($myres)) { echo $row["monchamp"]; }
En fait j'ai un peu mieux compris mon problème. L'erreur ne vient pas de ma recupération. Elle vient de la connexion. Rien ne m'indique que j'ai une erreur à la connection MAIS je ne recupere en fait aucune ligne, comme si la table n'existait pas.
²
Le $num me renvoie 0
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 <?PHP function toDb($string) { # le probleme doit venir d'ici!!!!! $connect = pg_connect("host=sql1.lo-data.net dbname=bricecol user=bricecol password=****"); #---------------------------------- $request = pg_query($connect, $string); $num = pg_num_rows($request); print("$num <br />"); while($row = pg_fetch_array($request)): print($row['login']."<br />"); endwhile; pg_free_result($request); pg_close($connect); } ?>
comment se connecter correctement vers un phpPgAdmin 3.5.1 ?
Tu ne te conencte pas à phpPgAdmin qui une interface web permettant la gestion d'un base Postgres...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 $strConnect = 'host='.$host.' port='.$port.' dbname='.$dbname.' user='.$'user.' password='.$'password; pg_connect($strConnect);
Tu te connecte sur un serveur hebergeant un SGBD postgres
ui enfin, ne jouon pa sur les mots. on m'a compris qd meme. c'est vrai que phpg est une interface mais bon, j'essai moi de me connecter a la base. je me connecte d'ailleur car sinon i me donnerai une erreur. j'arrive meme a recuperer une ligne des fois, mais pas le reste. c'est incomprehensible...
dans ta chaîne de connexion, je crois qu'il faut des virgules et non pas des espaces entre des différents champs
edit : je retire cela.....après prise d'info
Tu devrais essayer de gérer les erreurs un minimum, ça t'aiderait à voir d'où vient ton problème
je gere justement toutes les erreurs!! mais dans le code que je vous montre, je les ai enlevé car ca alourdissait un peu le code.
celement, cela ne m'aide pas (des fois aucune erreur et une ligne de resultat alors que j'en attend 5.., des fois une erreur et rien..) enfin, ca varie.
C'est pr ca que je pense que cela vient de la connexion ou de droits sur les tables pg j'en c rien. c'est pr ca, si quelqu'une est arivé a se servir de pg pr une consultation et qu'il a recupere ttes les infos, qu'il poste son bout de code SVP!!!
si tu penses que ton problème vient de ta connexion ou des droits sur tes tables, en quoi un bout de code qu'on te donnerait règlerait ton problème?C'est pr ca que je pense que cela vient de la connexion ou de droits sur les tables pg j'en c rien. c'est pr ca, si quelqu'une est arivé a se servir de pg pr une consultation et qu'il a recupere ttes les infos, qu'il poste son bout de code SVP!!!
Donne nous le message d'erreur que tu as (pas tout le temps on a compris...mais c'est bizarre), la requête qui correspond et la structure de la table que tu attaques.
Je suis sous PHP 5.1, Pg 8.1 et Apache 2
Je t'ai donné un bout de code... ce que je t'ai donné est amplement suffisant, cela na viendrait pas plutot de tes requetes ? ou d'une erreur de code ?
de plus pour les probleme de droit, vérifie pg_hba.conf, et le droit que tu as donné à tes roles de connexion.
De plus si tu nous donnais tes erreurs, on pourrait un peu plus t'aider.
Code : Sélectionner tout - Visualiser dans une fenêtre à part GRANT ALL PRIVILEGES ON DATABASE mabase TO monrole
j'ai crée:
POUR TESTER LE SCRIPT ET LE TELECHARGER: http://bcolucci.free.fr/requete.php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 create table test( nom varchar(20) primary key, prenom varchar(20) not null);
![]()
et on le télécharge comment ton script?
ouais super comme erreur. Celle qui m'intéresse est celle générée par ton script php pas
Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Apache/ProXad [Apr 14 2007 12:48:55] Server at bcolucci.free.fr Port 80
PARDON CEST VRAI, me suis trompé quand j'ai uploadé... la c bon
http://bcolucci.free.fr/requete.php
j'ai testé mon script avec mon mot de passe, et j'ai une erreur au niveau de la requete et pas au niveau de la connection.
tu te sens obligé d'écrire avec ce formatage?
ouais super encore une fois.
Qu'est-ce que tu veux qu'on fasse avec ça?
Il faut le code php (complet avec la gestion des erreurs) qui correspond et pourquoi pas la définition des tables impliquées dans tes requêtes. Après on pourra t'aider.
je retire en partie ce que je viens de dire.
es-tu sûr que ta base contient bien la table test?
tu as le code. j'ai fais un screen qui prouve que la base existe..
je ne comprend pas plus que toi lol
ce n'est sans doute pas ça qui pose problème....mais sait-on jamais : remplace sql1.lo-data.net par l'adresse IP indiquée dans ton phpPgAdmin (192.168.3.32) dans ton script PHP.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager