Tengo un error en la siguiente función pero no encuentro dónde:
static public function obtenerCabanasPorFecha($fi, $ff){
//Realizamos la consulta.
$ejecucion = self::Conexion();
$registro = $ejecucion->query("SELECT c.* FROM cabanas AS c WHERE c.idcabana NOT IN (SELECT idcabana FROM reservas WHERE ('$fi' >= check_in OR '$ff' >= check_out) AND ('$ff' <= check_in OR '$fi' <= check_out));");
//Creamos un array de cabanas.
$cabanas = array();
//Mientras haya datos los guardamos...
while($datos = $registro->fetch()){
$datos["imagenes"] = BD::obtenerImagenesCabana($datos["idcabana"]);
$micabana = new Cabanas($datos);
//array_push: añadir un elemento al final de un array.
array_push($cabanas, $micabana);
}
return $cabanas;
}
Incluyo la función obtenerImagenesCabana:
static public function obtenerImagenesCabana($idcabana){
//Realizamos la consulta.
$ejecucion = self::Conexion();
$sql = "SELECT ruta FROM imagenes WHERE idcabana=$idcabana";
$registro = $ejecucion->query($sql);
//Creamos una array de imagenes.
$imagenes = array();
//Mientras haya datos los guardamos...
while($datos = $registro->fetch()){
//Array asociativo: al array $imagenes le pasamos la imagen concreta.
array_push($imagenes, $datos["ruta"]);
}
//Devolvemos el array de imagenes.
return $imagenes;
}
Error:
Fatal error: Call to a member function fetch() on a non-object in /hosting/distancia/www/Clases/BD.php on line 207
Tablas en BBDD: