mysqli::change_user
mysqli_change_user
(PHP 5)
mysqli::change_user -- mysqli_change_user — Change l'utilisateur de la connexion spécifiée
Description
Style orienté objet
$user
, string $password
, string $database
)Style procédural
Change l'utilisateur de la connexion spécifiée par le paramètre
link
et change la base de données courante pour
celle spécifiée par le paramètre database
.
Pour que cette fonction réussisse, les paramètres
username
et password
doivent
être valides et l'utilisateur en question doit avoir les permissions
d'accès à la base de données désirée.
Si pour une raison ou une autre, l'autorisation échoue, l'utilisateur
courant sera conservé.
Liste de paramètres
-
link
-
Seulement en style procédural : Un identifiant de lien retourné par la fonction mysqli_connect() ou par la fonction mysqli_init()
-
user
-
Le nom d'utilisateur MySQL.
-
password
-
Le mot de passe MySQL.
-
database
-
La base de données à utiliser.
Vous pouvez passer la valeur
NULL
à ce paramètre pour ne changer que l'utilisateur. Dans ce cas, vous pouvez utiliser la fonction mysqli_select_db() pour changer de base de données.
Valeurs de retour
Cette fonction retourne TRUE
en cas de
succès ou FALSE
si une erreur survient.
Notes
Note:
L'utilisation de cette commande implique toujours que la connexion soit considérée comme neuve, que la fonction réussisse ou non. Un appel à cette fonction annulera donc toutes les transactions actives, fermera les tables temporaires et déverrouillera les tables verrouillées.
Exemples
Exemple #1 Exemple avec mysqli::change_user()
<?php /* Connexion à la base de données test */ $mysqli = new mysqli("localhost", "my_user", "my_password", "test"); /* Vérification de la connexion */ if (mysqli_connect_errno()) { printf("Échec de la connexion : %s\n", mysqli_connect_error()); exit(); } /* Définition de la variable "a" */ $mysqli->query("SET @a:=1"); /* réinitialise tout et sélectionne une nouvelle base de données */ $mysqli->change_user("my_user", "my_password", "world"); if ($result = $mysqli->query("SELECT DATABASE()")) { $row = $result->fetch_row(); printf("Base de données par défaut : %s\n", $row[0]); $result->close(); } if ($result = $mysqli->query("SELECT @a")) { $row = $result->fetch_row(); if ($row[0] === NULL) { printf("La valeur de la variable a est NULL\n"); } $result->close(); } /* Fermeture de la connexion */ $mysqli->close(); ?>
<?php /* Connexion à la base de données test */ $link = mysqli_connect("localhost", "my_user", "my_password", "test"); /* Vérification de la connexion */ if (!$link) { printf("Échec de la connexion : %s\n", mysqli_connect_error()); exit(); } /* Définition de la variable "a" */ mysqli_query($link, "SET @a:=1"); /* réinitialise tout et sélectionne une nouvelle base de données */ mysqli_change_user($link, "my_user", "my_password", "world"); if ($result = mysqli_query($link, "SELECT DATABASE()")) { $row = mysqli_fetch_row($result); printf("Base de données par défaut : %s\n", $row[0]); mysqli_free_result($result); } if ($result = mysqli_query($link, "SELECT @a")) { $row = mysqli_fetch_row($result); if ($row[0] === NULL) { printf("La valeur de la variable a est NULL\n"); } mysqli_free_result($result); } /* Fermeture de la connexion */ mysqli_close($link); ?>
Les exemples ci-dessus vont afficher :
Base de données par défaut : world La valeur de la variable a est NULL
Voir aussi
- mysqli_connect() - Alias de mysqli::__construct
- mysqli_select_db() - Sélectionne une base de données par défaut pour les requêtes