© Éditions Eyrolles
331
chapitre n° 9
Utilisation avec PHP
Validation
Les fonctions mysqli_commit et mysqli_rollback permettent de gérer des transactions,
elles retournent TRUE en cas de succès, FALSE sinon.
Le programme suivant (insert1.php) insère une nouvelle compagnie (en supposant
qu’aucune erreur n’est retournée de la part de la base). Nous étudierons plus loin comment
passer des paramètres à une instruction (prepared statement) et comment récupérer, au niveau
de PHP, les erreurs renvoyées par MySQL.
Tableau 9-2 Fonctions d’analyse et d’exécution
Nom de la fonction
Paramètres
ressource msqli_prepare(ressource
connexion, string ordreSQL)
Le premier paramètre désigne l’identifiant de la
connexion. Le second contient l’ordre SQL à analyser (SELECT, INSERT, UPDATE, DELETE,
CREATE…).
boolean mysqli_stmt_execute(ressource
ordreSQL)
Le paramètre désigne l’identifiant d’état à exécuter (renvoyé par prepare).
boolean mysqli_stmt_fetch(ressource
ordreSQL)
Affecte aux variables de liaison PHP le résultat
d’une requête préparée.
Tableau 9-3 Fonctions de validation et d’annulation
Nom de la fonction
Paramètres
boolean mysqli_commit(ressource
connexion)
Valide la transaction de la connexion en paramètre.
boolean mysqli_rollback(ressource
connexion)
Annule la transaction de la connexion en paramètre.
Tableau 9-4 Insertion d’un enregistrement
Code PHP
Commentaires
if ( ($service = mysqli_connect
('localhost','soutou','iut','bdsoutou')) > 0)
Connexion.
{ mysqli_autocommit($service,FALSE);
$insert1 = "INSERT INTO bdsoutou.Compagnie
VALUES('AL','Air Lib')";
Début de la transaction.
Création de l’instruction.
$ordre
=
;
Prépare l’insertion.
if ( ($res =
) > 0)
Exécute l’insertion.
{ print "
Ajout opéré";
; }
;
Validation.
Libère les ressources.
;
Ferme la connexion.
}
else print "
La connexion est un échec!";
?>
Web
mysqli_prepare($service, $insert1)
mysqli_stmt_execute($ordre)
mysqli_commit($service)
mysqli_stmt_free_result($ordre)
mysqli_close($service)
Précédent

- 353/418

Suivant