pg_escape_bytea
(PHP 4 >= 4.2.0, PHP 5, PHP 7)
pg_escape_bytea — Protège une chaîne pour insertion dans un champ bytea
Description
$connection
], string $data
) : string
pg_escape_bytea() protège les caractères de la
chaîne data
avec le mode bytea. La chaîne
protégée est retournée.
Note:
Lorsque vous utilisez une commande SELECT avec des données de type bytea, PostgreSQL retourne des valeurs octales, préfixées avec des antislashs '\' (par exemple \032). Les utilisateurs doivent effectuer la conversion en format binaire manuellement.
pg_escape_bytea() requiert PostgreSQL 7.2 ou plus récent. Avec PostgreSQL 7.2.0 et 7.2.1, les données bytea doivent être transtypée lorsque vous activez le support des chaînes de caractères multioctets. C'est-à-dire INSERT INTO test_table (image) VALUES ('$image_escaped'::bytea);. PostgreSQL 7.2.2 ou plus récent ne requiert pas cette manipulation. Toutefois, si le client et le serveur n'utilisent pas le même jeu de caractères, il peut arriver des erreurs. Il faut alors forcer le transtypage manuellement.
Liste de paramètres
-
connection
-
Ressource de connexion à une 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 créée par la fonction pg_connect() ou la fonction pg_pconnect(). -
data
-
Une chaîne de caractères contenant du texte ou des données binaires qui seront insérées dans la colonne bytea.
Exemples
Exemple #1 Exemple avec pg_escape_bytea()
<?php
// Connexion à la base de données
$dbconn = pg_connect('dbname=foo');
// Lecture d'un fichier binaire
$data = file_get_contents('image1.jpg');
// Échappement des données binaires
$escaped = pg_escape_bytea($data);
// Insertion dans la base de données
pg_query("INSERT INTO gallery (name, data) VALUES ('Pine trees', '{$escaped}')");
?>
Voir aussi
- pg_unescape_bytea() - Supprime la protection d'une chaîne de type bytea
- pg_escape_string() - Protège une chaîne de caractères pour une requête SQL
Version en cache
22/11/2024 22:58:43 Cette version de la page est en cache (à la date du 22/11/2024 22:58:43) afin d'accélérer le traitement. Vous pouvez activer le mode utilisateur dans le menu en haut pour afficher la dernère version de la page.Document créé le 30/01/2003, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/php-rf-pg-escape-bytea.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
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.