pg_select
(PHP 4 >= 4.3.0, PHP 5)
pg_select — Effectue une sélection PostgreSQL
Description
$connection
, string $table_name
, array $assoc_array
[, int $options = PGSQL_DML_EXEC
] )pg_select() sélectionne les enregistrements par assoc_array qui est au format champ=>valeur. Lorsque la requête réussit, elle retourne un tableau contenant tous les enregistrements et champs qui vérifient la condition spécifiée par assoc_array.
Si options est spécifiée, pg_convert() est appliquée à assoc_array avec les drapeaux spécifiés.
Liste de paramètres
-
connection -
Ressource de connexion de base de données PostgreSQL.
-
table_name -
Nom de la table dans laquelle on sélectionne les lignes.
-
assoc_array -
Un tableau à qui les clés sont les noms des champs dans la table
table_nameet à qui les valeurs sont les conditions que la ligne doit vérifier pour être récupérée. -
options -
N'importe quelle de
PGSQL_CONV_FORCE_NULL,PGSQL_DML_NO_CONV,PGSQL_DML_ESCAPE,PGSQL_DML_EXEC,PGSQL_DML_ASYNCouPGSQL_DML_STRINGcombinée. SiPGSQL_DML_STRINGfait partie deoptionsalors la requête est retournée sous forme de chaîne de caractères. Lorsque la constantePGSQL_DML_NO_CONVou la constantePGSQL_DML_ESCAPEest définie, aucun appel à la fonction pg_convert() ne sera effectué en interne.
Valeurs de retour
Cette fonction retourne TRUE en cas de
succès ou FALSE si une erreur survient. Retourne une chaîne de caractères si
PGSQL_DML_STRING est passé via
options.
Exemples
Exemple #1 Exemple avec pg_select()
<?php
$db = pg_connect ('dbname=foo');
// C'est sécuritaire, car $_POST est converti automatiquement
$rec = pg_select($db, 'post_log', $_POST);
if ($rec) {
echo "Lignes lues\n";
var_dump($rec);
} else {
echo "Problème dans les données utilisateur\n";
}
?>
Historique
| Version | Description |
|---|---|
| 5.6.0 |
La fonction n'est plus expérimentale. Ajout de la constante
PGSQL_DML_ESCAPE ainsi que du support des données
de type TRUE/FALSE et NULL.
|
| 5.5.3/5.4.19 |
Les injections SQL directes dans table_name
et les injections SQL indirectes via les identifiants ont été résolues.
|