Skip site navigation (1) Skip section navigation (2)

Re: postgresql php et Insert

From: "Daniel Verite" <daniel(at)manitou-mail(dot)org>
To: "BPascal" <pascal62fr(at)free(dot)fr>
Cc: pgsql-fr-generale(at)postgresql(dot)org
Subject: Re: postgresql php et Insert
Date: 2008-08-27 10:14:39
Message-ID: 18ae93ab-b3ef-42c2-bce6-1cca08c5bd82@mm (view raw or flat)
Thread:
Lists: pgsql-fr-generale
	BPascal wrote:

> Voici 3 requètes de test, la première un Select marche et les 2 
Insert 
> non, "pg_query Insert TTest: Serveur saturé, essayer plus tard.".

Il y a plusieurs soucis dans ton code.

Dans le select tu demandes "Champ1" et "Champ2" avec des guillemets, ce 
qui signifie que ces champs ont un C majuscule.
Mais dans l'INSERT, c'est Champ1 et Champ2 sans les guillemets, donc 
plus de majuscule explicite, ce n'est pas consistant avec le SELECT.

Une deuxième raison est que $valeur1 et $valeur2 doivent être exprimées 
comme des chaines de caractères SQL et ne peuvent pas être passées 
directement.
Il faut mettre la valeur entre apostrophes et tant qu'à faire appeler 
pg_escape_string sur le contenu.
Du genre:
$v1 = "'" . pg_escape_string($valeur1) . "'";
et utiliser $v1 dans la chaine d'INSERT à la place de $valeur1

Egalement par défaut les messages d'erreur de pg_query arrivent 
directement sur la page web me semble-t-il. Il est préférable de 
travailler dans cette config, en tout cas quand on développe, parce 
qu'avec le message "Serveur saturé" tu es en mode aveugle sur les 
erreurs.

Enfin il n'est pas nécessaire de se reconnecter à la base à chaque 
pg_query, c'est même très pénalisant.
Une fois que le pg_connect() a réussi, la connexion obtenue est valide 
pour le reste du script.

-- 
 Daniel
 PostgreSQL-powered mail user agent and storage: 
http://www.manitou-mail.org

In response to

Responses

pgsql-fr-generale by date

Next:From: BPascalDate: 2008-08-27 12:15:48
Subject: Re: postgresql php et Insert
Previous:From: Guillaume LelargeDate: 2008-08-27 10:04:23
Subject: Re: postgresql php et Insert

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group