Partie III
Langages et outils
330
© Éditions Eyrolles
Connexion
La fonction mysqli_connect retourne un identifiant de connexion utilisé par la majorité
des appels à la base. Les fonctions mysqli_close , mysqli_select_db et mysqli_
change_user renvoient TRUE en cas de succès, FALSE en cas d’erreur. Une connexion se
ferme implicitement en fin de programme même si elle n’a pas été clôturée explicitement.
Interactions avec la base
La majorité des traitements SQL, lorsqu’ils incluent des paramètres, s’effectuent comme suit :
connexion ( connect ), préparation de l’ordre ( parse ), association des paramètres à l’ordre SQL
( bind ), exécution dudit ordre ( execute ), lecture des lignes (pour les SELECT , fetch ) et libération des ressources ( free et close ) après une éventuelle validation de la transaction courante
( commit ou rollback ).
Préparation, exécution
La fonction msqli_prepare prépare l’ordre SQL puis retourne un identifiant d’état qui peut
être utilisé notamment par les fonctions mysqli_stmt_bind_param et mysqli_stmt_
execute . La fonction msqli_prepare retourne FALSE dans le cas d’une erreur, mais ne
valide ni sémantiquement ni syntaxiquement l’ordre SQL. Il faudra attendre pour cela son
exécution par mysqli_stmt_execute .
La fonction mysqli_stmt_execute exécute un ordre SQL préparé (renvoie TRUE en cas
de succès, FALSE sinon). Le mode par défaut est auto - commit . Pour la programmation de
transactions, désactiver ce mode (avec mysqli_autocommit ) puis valider explicitement
par mysqli_commit .
La fonction mysqli_stmt_fetch exécute pas à pas une requête préparée (retourne TRUE
en cas de succès, FALSE sinon).
Tableau 9-1 Fonctions de connexion et de déconnexion
Nom de la fonction
Paramètres
ressource mysqli_connect(string
serveur, string utilisateur, string
motpasse [,string nomBase])
Nom du serveur, utilisateur, mot de passe, nom de
la base éventuellement. Retourne FALSE en cas
d’erreur.
boolean mysqli_close(ressource
connexion)
Ferme la connexion dont l’identifiant passe en
paramètre.
boolean mysqli_select_db(ressource
connexion, string nomBase)
Modifie la sélection de la base de la connexion
dont l’identifiant passe en paramètre.
boolean mysqli_change_user(ressource
connexion, string utilisateur, string
motpasse, string nomBase)
Modifie l’utilisateur et la base de la connexion dont
l’identifiant passe en paramètre.
Langages et outils
330
© Éditions Eyrolles
Connexion
La fonction mysqli_connect retourne un identifiant de connexion utilisé par la majorité
des appels à la base. Les fonctions mysqli_close , mysqli_select_db et mysqli_
change_user renvoient TRUE en cas de succès, FALSE en cas d’erreur. Une connexion se
ferme implicitement en fin de programme même si elle n’a pas été clôturée explicitement.
Interactions avec la base
La majorité des traitements SQL, lorsqu’ils incluent des paramètres, s’effectuent comme suit :
connexion ( connect ), préparation de l’ordre ( parse ), association des paramètres à l’ordre SQL
( bind ), exécution dudit ordre ( execute ), lecture des lignes (pour les SELECT , fetch ) et libération des ressources ( free et close ) après une éventuelle validation de la transaction courante
( commit ou rollback ).
Préparation, exécution
La fonction msqli_prepare prépare l’ordre SQL puis retourne un identifiant d’état qui peut
être utilisé notamment par les fonctions mysqli_stmt_bind_param et mysqli_stmt_
execute . La fonction msqli_prepare retourne FALSE dans le cas d’une erreur, mais ne
valide ni sémantiquement ni syntaxiquement l’ordre SQL. Il faudra attendre pour cela son
exécution par mysqli_stmt_execute .
La fonction mysqli_stmt_execute exécute un ordre SQL préparé (renvoie TRUE en cas
de succès, FALSE sinon). Le mode par défaut est auto - commit . Pour la programmation de
transactions, désactiver ce mode (avec mysqli_autocommit ) puis valider explicitement
par mysqli_commit .
La fonction mysqli_stmt_fetch exécute pas à pas une requête préparée (retourne TRUE
en cas de succès, FALSE sinon).
Tableau 9-1 Fonctions de connexion et de déconnexion
Nom de la fonction
Paramètres
ressource mysqli_connect(string
serveur, string utilisateur, string
motpasse [,string nomBase])
Nom du serveur, utilisateur, mot de passe, nom de
la base éventuellement. Retourne FALSE en cas
d’erreur.
boolean mysqli_close(ressource
connexion)
Ferme la connexion dont l’identifiant passe en
paramètre.
boolean mysqli_select_db(ressource
connexion, string nomBase)
Modifie la sélection de la base de la connexion
dont l’identifiant passe en paramètre.
boolean mysqli_change_user(ressource
connexion, string utilisateur, string
motpasse, string nomBase)
Modifie l’utilisateur et la base de la connexion dont
l’identifiant passe en paramètre.
