Bueno al parecer esta solucionado mi problema, pero si se puede mejorar espero sus comentarios:
De esta forma obtengo solo el archivo que esta siendo utilizado:
Código PHP:
Ver originalprivate function retonrnaMenuID($nombreArchivo){
$query="SELECT menuID FROM menu WHERE archivo=?";
$stmt=$this->_connection->prepare($query);
$stmt->bind_param("s",$nombreArchivo);
$stmt->execute();
$menuID=$stmt->fetch_object();
return $menuID;
}
public function acceso($id_usuario,$id_menu,$nombreArchivo){
$menuID = $this->retonrnaMenuID($nombreArchivo);
$query="SELECT privLectura,privEscritura,menuID FROM permiso WHERE usuarioID=? AND menuID=?";
$stmt=$this->_connection->prepare($query);
$stmt->bind_param('ii',$id_usuario,$menuID->menuID);
$stmt->execute();
$accesos=$stmt->fetch_object();
if($accesos->privLectura == 0):
$this->setError("ErrorAccesoLectura","No tienes acceso a este contenido. Ponte en contacto con el administrador para habilitar el permiso.");
//header("location: pagina_anterior.php");
else:
$this->_priv_lectura = true;
endif;
if($accesos->privEscritura == 0):
$this->setError("ErrorAccesoEscritura","No cuentas con el permiso para hacer modificaciones en este módulo. Ponte en contacto con el administrador para habilitar el permiso.");
//header("location: pagina_anterior.php");
else:
$this->_priv_escritura = true;
endif;
if($accesos->privReportes == 0):
$this->setError("ErrorAccesoReporte","No cuentas con el permiso para realizar esta accion. Ponte en contacto con el administrador para habilitar el permiso.");
//header("location: pagina_anterior.php");
else:
$this->_privReporte = true;
endif;
}
Otra opcion que se me ocurrio fue hacer una consulta con join de permiso a menu y en el where validar el usuario y el nombre del archivo directamente.