mysqli_change_user

(PHP 5)

mysqli_change_user

(no version information, might be only in CVS)

mysqli->change_user -- Cambia el usuario de la conexión a la base de datos especificada

Descripción

Estilo por procedimientos:

bool mysqli_change_user ( mysqli identificador_de_enlace, cadena usuario, cadena contraseña, cadena base_de_datos )

Estilo orientado a objetos (método):

class mysqli {

bool change_user ( cadena usuario, cadena contraseńa, cadena base_de_datos )

}

mysqli_change_user() Es usada para cambiar el usuario para la conexión de base de datos indicada por el parámetro identificador_de_enlace y para fijar la actual base de datos a la específicada por el parámetro base_de_datos.

Si se desea, se puede pasar el valor NULL en lugar del parámetro base_de_datos resultando en solo cambiar el usaurio y no seleccionar la base de datos. Para seleccionar una base de datos en este caso use la función mysqli_select_db().

Para poder cambiar de usuario de forma exitosa se debe proveer de un usuario y contraseña validos, y tales parámetros debe contar con los suficientes permisos para acceder a la base de datos deseada. Si por cualquier razón la autorización falla, el actual usuario autenticado permanecerá activo.

Nota: El uso de este comando siempre producirá que la conexión actual a la base de datos se comporte como si fuera una nueva conexión, sin importar si la operación fue completada exitosamente. Este reinicio implica el hacer la restauración no actualizada "rollback" de cualquier transacción activa, cerrar todas las tablas temporales y des-asegurar todas las tablas aseguradas.

Valores retornados

Devuelve TRUE si todo se llevó a cabo correctamente, FALSE en caso de fallo.

Ver también

mysqli_connect(), y mysqli_select_db().

Ejemplos

Ejemplo 1. Estilo orientado a objetos

<?php

/* connect database test */
$mysqli = new mysqli("localhost", "my_user", "my_password", "test");

/* check connection */
if (mysqli_connect_errno()) {
    
printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

/* Set Variable a */
$mysqli->query("SET @a:=1");
                                         
/* reset all and select a new database */
$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();
}

/* close connection */
$mysqli->close();
?>

Ejemplo 2. Estilo por procedimientos

<?php
/* connect database test */
$link = mysqli_connect("localhost", "my_user", "my_password", "test");

/* check connection */
if (!$link) {
    
printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

/* Set Variable a */
mysqli_query($link, "SET @a:=1");
                                         
/* reset all and select a new database */
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);
}

/* close connection */
mysqli_close($link);
?>

El resultado del ejemplo seria:

Default database: world
Value of variable a is NULL

Hosting by: hurra.com
Generated: 2007-01-26 18:00:47