PHP - Error entre Procedimiento almacenado y consulta directa

 
Vista:
sin imagen de perfil
Val: 47
Ha aumentado su posición en 5 puestos en PHP (en relación al último mes)
Gráfica de PHP

Error entre Procedimiento almacenado y consulta directa

Publicado por Diego (37 intervenciones) el 25/03/2019 16:11:09
Buen día.
Tengo el siguiente problema:
Tengo un sitio activo y funcionando, y voy a realizar algunas nuevas funcionalidades, para trabajarlo lo he bajado junto con la base de datos correspondientes y estoy usando Wampserver para trabajarlo de manera local.

En una clase llamada precios tengo la siguiente funcion que obtiene todos los precios mediante un procedimiento almacenado:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Public Function PreciosObtenerDatos(){
require_once('../funciones/conexion.php');
$conexion=New Conexion();
$conn=$conexion->conectar();
$sql="CALL SP_PreciosObtenerDatos"; // ESTA ES LA LINEA DEL ERROR
//$sql="SELECT * FROM tbl_Precios order by id"; ESTA ES LA CONSULTA DEL PROCEDIMIENTO Y FUNCIONA LOCALMENTE
$resultado=$conn->query($sql);
$i=0;
    while($row = mysqli_fetch_assoc($resultado)){
        $respuesta[$i] = $row;
        $i++;
    }
    return $respuesta;
    mysqli_close($conn);
}

En producción funciona perfecto, ahora bien, de manera local no, y el procedimiento almacenado está bien.
Si yo reemplazo la llamada al procedimiento almacenado por la consulta SQL directa funciona perfecto, pero no puedo reemplazar todos los procedimientos almacenados por las consultas ya que son muchos y me llevaria mucho tiempo ademas de ser menos eficientes.
Si de manera local llamo al procedimiento almacenado me da el error:
"Warning: Mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, boolean given in C:....."
Y me indica el error en la linea del llamado al procedimiento almacenado, si la comento y quito el comentario a la consulta directa funciona perfecto.
Parece ser un error de configuración del servidor local, pero no se por dónde buscar
Alguna sugerencia?

Muchas gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 1.071
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Error entre Procedimiento almacenado y consulta directa

Publicado por Yamil Bracho (888 intervenciones) el 25/03/2019 16:57:19
Me suena a permisologia de ejecucion de los SP. Tienes usuario diferente para las dos versiones de la BD ? Es decir, tienes un usuario en local el cual es diferente al que usas en produccion ?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 47
Ha aumentado su posición en 5 puestos en PHP (en relación al último mes)
Gráfica de PHP

Error entre Procedimiento almacenado y consulta directa

Publicado por Diego (37 intervenciones) el 25/03/2019 17:30:16
Hola Yamil, gracias por tu respuesta.
El usuario es igual al de produccion y tiene todos los privilegios.
Por si acaso ejecuté:

GRANT ALL ON mi_base.* TO mi_usuario@'localhost';
GRANT SELECT ON mysql.proc TO mi_usuario@'localhost';
FLUSH PRIVILEGES;

Pero sigue con el mismo error....
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar