pg_transaction_status
(PHP 5 >= 5.1.0)
pg_transaction_status — Retourne le statut de la transaction en cours du serveur
Description
$connection
)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 obsolète 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
Exemple #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'; } ?>