pg_transaction_status
(PHP 5 >= 5.1.0)
pg_transaction_status — Retourne le statut de la transaction en cours du serveur
Description
Retourne le statut de la transaction en cours du serveur.
pg_transaction_status() donnera de mauvais résultats lorsque vous l'utiliserez avec un serveur PostgreSQL 7.3 qui a le paramètre autocommit désactivé. La fonctionnalité de autocommit est dépréciée et n'existe plus dans les versions de serveur plus récentes.
Liste de paramètres
- connection
-
Ressource de connexion de base de données PostgreSQL.
Valeurs de retour
Le statut peut être PGSQL_TRANSACTION_IDLE (actuellement inactif), PGSQL_TRANSACTION_ACTIVE (une commande est en cours), PGSQL_TRANSACTION_INTRANS (inactif, dans un bloc de transaction valide), ou PGSQL_TRANSACTION_INERROR (inactif, dans un bloc de transaction en échec). PGSQL_TRANSACTION_UNKNOWN est retourné si la connexion est mauvaise. PGSQL_TRANSACTION_ACTIVE est retourné seulement si la requête a été envoyée au serveur et que celle-ci n'a pas été encore complétée.
Exemples
Example#1 Exemple avec pg_transaction_status()
<?php
$dbconn = pg_connect("dbname=publisher") or die("Connexion impossible");
$stat = pg_transaction_status($dbconn);
if ($stat === PGSQL_TRANSACTION_UNKNOWN) {
echo 'Connexion mauvaise';
} else if ($stat === PGSQL_TRANSACTION_IDLE) {
echo 'Connexion actuellement inactive';
} else {
echo 'Connexion est en cours de transaction';
}
?>