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:
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
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


0