Ver Mensaje Individual
  #1 (permalink)  
Antiguo 07/05/2009, 00:16
Avatar de neodani
neodani
 
Fecha de Ingreso: marzo-2007
Mensajes: 1.811
Antigüedad: 17 años, 2 meses
Puntos: 20
Dar permisos a un usuario mysql con php

Buenas,

Me gustaría saber si alguien más tiene instalado o usa el MYSQL ADMINISTRATOR

Si es así, cuando entráis como root a la aplicación hay un apartado llamado "User Administrator". Si seleccionamos un usuario y miramos que permisos tiene sobre una base de datos, (veremos dos columnas)

Assigned Privileges y Available Privileges

En teoria si queremos que el usuario pueda hacer de todo sobre una base de datos, seleccionamos la base de datos y le asignamos todos los permisos de la columna "Available Privileges" a la de "Assigned Privileges"

Pues bien, he creado un script en PHP que teoricamente hace eso pero cuando entro al MYSQL ADMINISTRATOR no veo que los permisos se hayan cambiado de columna, es más en la columna de ese usuario con la base de datos en cuestión de "Assigned Privileges" esta vacía.

Me gustaría saber si la orden es correcta y si a vosotros también os pasa.

Código PHP:
$db = @mysql_connect('localhost''root''pass');

        if(!
$db){ 
            
Redirigir_error(0); // No se puede conectar a la base de datos
            
exit;
        }
        elseif (@
mysql_select_db("$name_bbdd"$db)){
            
Redirigir_error(14); // Ya existe la base de datos que intentas crear
            
exit;
        }
        else{            
            
$query_crear_usuario="CREATE USER '$user_bbdd' IDENTIFIED BY '$pass1_bbdd'";
            
$query_permisos="GRANT ALL on $name_bbdd.* TO $user_bbdd@localhost IDENTIFIED BY '$pass1_bbdd'";

            
// --->>> Intentamos crear el usuario
            
$existe_user mysql_query($query_crear_usuario);
            
            if (!
$existe_user) {
                
Redirigir_error(16); // El usuario ya existe
                
exit;
            }
            else{
                
$query_crear_bbdd="CREATE DATABASE IF NOT EXISTS $name_bbdd";
                
$result1 mysql_query($query_crear_bbdd);
                
$result2 mysql_query($query_permisos);
            }
            
Redirigir_error(20); // Creada con exito
            
exit;    
        } 
Gracias de antemano