Manuel PHP
Précédent |  | Suivant

# pg_query_params

(PHP 5 >= 5.1.0RC1)

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 )
resource pg_query_params ( 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 paramétrisée. 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` en cas d'échec.

## Exemples

Exemple 1. Using 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()

Précédent | Sommaire | Suivant
pg_put_line | Niveau supérieur | pg_query