(PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)
pg_update — Modifie les lignes d'une table
$connection
,$table_name
,$values
,$conditions
,$flags
= PGSQL_DML_EXEC
pg_update() modifie les lignes de la table table_name
, qui vérifient la condition conditions
avec values
.
Si flags
est spécifié, pg_convert() est appliqué à values
avec les drapeaux fournit.
Par défaut pg_update() passe des valeurs brutes. Les valeurs doivent être échappé ou le drapeau PGSQL_DML_ESCAPE
doit être spécifié dans flags
. PGSQL_DML_ESCAPE
met des guillemets et échappe les paramètres/identifiants. Par conséquent, les noms de table/colonnes deviennent 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.
connection
Une instance PgSql\Connection.
table_name
Le nom de la table dans laquelle les lignes seront mises à jour.
values
Un tableau dont les clés sont les noms des champs dans la table table_name
, et où les valeurs sont les lignes correspondantes qui seront mises à jour.
conditions
Un tableau dont les clés sont les noms des champs dans la table table_name
, et où les valeurs sont les conditions à remplir par les lignes pour être mises à jour.
flags
Toutes combinaisons de constantes parmi PGSQL_CONV_FORCE_NULL
, PGSQL_DML_NO_CONV
, PGSQL_DML_ESCAPE
, PGSQL_DML_EXEC
, PGSQL_DML_ASYNC
ou PGSQL_DML_STRING
. Si PGSQL_DML_STRING
fait partie du paramètre flags
, alors la requête sera retournée. Lorsque la constante PGSQL_DML_NO_CONV
ou la constante PGSQL_DML_ESCAPE
est définie, aucun appel à la fonction pg_convert() ne sera réalisé en interne.
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 le paramètre flags
.
Version | Description |
---|---|
8.1.0 | Le paramètre connection attend désormais une instance de PgSql\Connection ; auparavant, une ressource était attendu. |
Exemple #1 Exemple avec pg_update()
<?php
$db = pg_connect ('dbname=foo');
$data = array('field1'=>'AA', 'field2'=>'BB');
// Ceci est sûr quelque peu, car toutes les valeurs sont échappées