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
