pg_put_line
pg_query
Fonctions PostgreSQL
PHP Manual

# pg_query_params

(PHP 5 >= 5.1.0)

pg_query_params — Envoie une commande au serveur et attend le résultat, avec les capacités de passer des paramètres séparément de la commande texte SQL

### Description

resource pg_query_params ([ resource `$connection` ], string `$query` , array `$params` )

Envoie une commande au serveur et attend le résultat, avec les capacités de passer des paramètres séparément de la commande texte SQL.

pg_query_params() est comme pg_query(), mais offre des fonctionnalités additionnelles : les valeurs des paramètres peuvent être spécifiées séparément de la ligne de commande propre. pg_query_params() est supportée seulement avec les versions PostgreSQL 7.4 ou plus récentes; la commande échouera si vous l'utilisez avec des versions antérieures.

Si des paramètres sont utilisés, ils sont référés à $1, $2, etc. dans `query`. `params` spécifie les valeurs actuelles des paramètres. Une valeur `NULL` dans ce tableau signifie que le paramètre correspondant est SQL `NULL`.

Le principal avantage de pg_query_params() sur pg_query() est que les valeurs des paramètres peuvent être séparées de la requête `query`, par conséquent, on invite les échappements de caractères ennuyeux et source d'erreurs. Contrairement à pg_query(), pg_query_params() permet seulement une seule commande SQL dans la chaîne donnée. (Il peut y avoir des points-virgules à l'intérieur mais pas plus d'une seule commande.)

### Liste de paramètres

`connection`

  La ressource de connexion de la base de données PostgreSQL. Lorsque `connection` n'est pas présent, la connexion par défaut est utilisée. La connexion par défaut est la dernière connexion faite par pg_connect() ou pg_pconnect().

`query`

  La requête SQL avec ses paramètres. Elle doit contenir seulement une seule requête. Plusieurs requêtes séparées par des points-virgules ne sont pas autorisées. Si des paramètres sont utilisés, ils sont référés à $1, $2, etc.

`params`

  Un tableau de valeurs de paramètres pour substituer les variables $1, $2, etc. dans la requête préparée originale. Le nombre d'éléments présents dans le tableau doit concorder avec le nombre de variables à remplacer.

### Valeurs de retour

Une ressource de résultats en cas de succès ou `FALSE` si une erreur survient.

### Exemples

Exemple #1 Exemple avec pg_query_params()

`<?php
// Connexion à une base de données nommée "marie"
$dbconn = pg_connect("dbname=marie");
// Cherche tous les magasins nommés Joe's Widgets. Notez qu'il n'est pas
// nécessaire d'échapper la chaîne "Joe's Widgets"
$result = pg_query_params($dbconn, 'SELECT * FROM magasins WHERE nom = $1', array("Joe's Widgets"));
// Compare en utilisant pg_query
$str = pg_escape_string("Joe's Widgets");
$result = pg_query($dbconn, "SELECT * FROM magasins WHERE nom = '{$str}'");
?>`

### Voir aussi

- pg_query() - Exécute une requête PostgreSQL

pg_put_line
pg_query
Fonctions PostgreSQL
PHP Manual