Forum und email

mysqli_change_user

mysqli->change_user()

(PHP 5)

mysqli->change_user() — Megváltoztatja a felhasználót a megadott adatbázis-kapcsolaton

Leírás

Eljárást használó stílus:

bool mysqli_change_user ( mysqli $link , string $user , string $password , string $database )

Objektum-orientált stílus (metódus):

mysqli
bool change_user ( string $user , string $password , string $database )

Váltja a felhasználót a jelenlegi adatbázis-kapcsolaton és beállítja a jelenlegi adabázist.

A felhasználók sikeres váltásához valódi username és password paramétereket kell megadni, és a felhasználónak megfelelő engedélyekkel kell rendelkeznie a kívánt adatbázison. Ha bármilyen okból a hitelesítés meghiúsul, a jelenlegi felhasználó megmarad.

Paraméterek

link

Procedural style only: A link identifier returned by mysqli_connect() or mysqli_init()

user

A MySQL felhasználónév.

password

A MySQL jelszó.

database

Az adatbázis, amire váltasz.

Ha szükséges, a NULL érték is megadható csak a felhasználó váltásához és így nem kiválasztva adatbázist. Ebben az aesetben az adatbázis kiválasztásához használd a mysqli_select_db() függvényt.

Visszatérési értékek

Siker esetén TRUE értékkel tér vissza, ellenkező esetben FALSE értéket ad.

Megjegyzések

Note: Ennek a parancsnak a használata mindig azt okozza, hogy a jelenlegi adatbáziskapcsolat úgy viselkedik, mintha teljesen új adatbáziskapcsolat lenne, akkor is, ha a művelet sikeres volt. Ez visszaállítja a visszagördítéseken végrehajtott beágyazásokat az összes aktív tranzakción, bezárja az összes ideiglenes táblát és kinyitja az összes lezárt táblát.

Példák

Example#1 Objektum-orientált stílus

<?php

/* csatlakozás a test adabázishoz */
$mysqli = new mysqli("localhost""my_user""my_password""test");

/* kapcsolat ellenőrzése */
if (mysqli_connect_errno()) {
    
printf("Connect failed: %s\n"mysqli_connect_error());
    exit();
}

/* Az a változó beállítása */
$mysqli->query("SET @a:=1");

/* minden visszaállítása és új adatbázis kiválasztása */
$mysqli->change_user("my_user""my_password""world");

if (
$result $mysqli->query("SELECT DATABASE()")) {
    
$row $result->fetch_row();
    
printf("Default database: %s\n"$row[0]);
    
$result->close();
}

if (
$result $mysqli->query("SELECT @a")) {
    
$row $result->fetch_row();
    if (
$row[0] === NULL) {
        
printf("Value of variable a is NULL\n");
    }
    
$result->close();
}

/* kapcsolat bezárása */
$mysqli->close();
?>

Example#2 Eljárást használó stílus

<?php
/* csatlakozás a test adabázishoz */
$link mysqli_connect("localhost""my_user""my_password""test");

/* kapcsolat ellenőrzése */
if (!$link) {
    
printf("Connect failed: %s\n"mysqli_connect_error());
    exit();
}

/* Az a változó beállítása */
mysqli_query($link"SET @a:=1");

/* minden visszaállítása és új adatbázis kiválasztása */
mysqli_change_user($link"my_user""my_password""world");

if (
$result mysqli_query($link"SELECT DATABASE()")) {
    
$row mysqli_fetch_row($result);
    
printf("Default database: %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("Value of variable a is NULL\n");
    }
    
mysqli_free_result($result);
}

/* kapcsolat bezárása */
mysqli_close($link);
?>

A fenti példa a következő kimenetet adja:

Default database: world
Value of variable a is NULL