Rechercher une fonction PHP

pg_select

(PHP 4 >= 4.3.0, PHP 5, PHP 7)

pg_select Effectue une sélection PostgreSQL

Description

pg_select ( resource $connection , string $table_name , array $assoc_array [, int $options = PGSQL_DML_EXEC [, int $result_type = PGSQL_ASSOC ]] ) : mixed

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 fournit, pg_convert() est appliqué à assoc_array avec les drapeaux fournit.

Par défaut pg_delete() passe des valeurs brutes. Les valeurs doivent être échappé ou l'option PGSQL_DML_ESCAPE doit être fournit. PGSQL_DML_ESCAPE met des guillemets et échappe les paramètres/idantifiants. Par conséquent, les noms de table/colonnes doivent être sensible à la casse.

Notez que ni l'échappement ni les requêtes préparer peuvent protéger des requêtes LIKE, JSON, Tableaux, Regex, etc. Ces paramètres devraient être traité en fonction de leur contexte. C'est à dire échapper/valider les valeurs.

Retour à la première page de Manuel PHP  Table des matières Haut

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_name et à 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_ASYNC ou PGSQL_DML_STRING combinée. Si PGSQL_DML_STRING fait partie de options alors la requête est retournée sous forme de chaîne de caractères. Lorsque la constante PGSQL_DML_NO_CONV ou la constante PGSQL_DML_ESCAPE est définie, aucun appel à la fonction pg_convert() ne sera effectué en interne.

Retour à la première page de Manuel PHP  Table des matières Haut

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.

Retour à la première page de Manuel PHP  Table des matières Haut

Exemples

Exemple #1 Exemple avec pg_select()

<?php 
  $db 
pg_connect ('dbname=foo');
  
// Ceci est sûr quelque peu, car toutes les valeurs sont échappées
  // Cependant PostgreSSQL supporte les JSON/Tableaux. Ceci ne sont pas
  // sûr ni par échappement ni par les requêtes préparés.
  
$rec pg_select($db'post_log'$_POSTPG_DML_ESCAPE);
  if (
$rec) {
    echo 
"Lignes lues\n";
    
var_dump($rec);
  } else {
    echo 
"Problème dans les données utilisateur\n";
  }
?>

Retour à la première page de Manuel PHP  Table des matières Haut

Historique

Version Description
7.1.0 Le paramètre result_type a été ajouté.
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.

Retour à la première page de Manuel PHP  Table des matières Haut

Voir aussi

  • pg_convert() - Convertit des valeurs d'un tableaux associatifs en une forme convenable pour des requêtes SQL

Rechercher une fonction PHP

Document créé le 30/01/2003, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/php-rf-function.pg-select.html

L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.

Références

  1. Consulter le document html Langue du document :fr Manuel PHP : http://php.net

Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.

Table des matières Haut