我正在尝试实施RBAC(基于用户权限,他们只能访问某些功能)。在这里,我有一个包含多个选项的菜单页面。
当用户点击图标时,我想通过调用 check_rights.php 来检查用户是否具有必要的权限。根据true和false的返回值,我会将用户重定向到适当的页面。
如果用户没有权限,我会尝试显示弹出窗口; myalert();带有消息,理想情况下在同一/当前页面上没有任何刷新。
我一直在尝试不同的变化而没有任何运气。以下是我最近的“跛脚”尝试。
欢迎任何关于如何实现此类功能的建议。
check_rights()是一个php函数 myalert()是一个js函数
<form action="">
<input type="submit" formaction= "javascript:check_rights(maintenance); ? "/crm/maintenance/maintenance_menu.php":"myalert()"" data-inline ="true" data-iconpos="" data-icon="maintenance" />
<input type="submit" formaction="/crm/maintenance/hr_menu.php" data-inline ="true" data-iconpos="" data-icon="humanresources" />
<input type="submit" formaction="/crm/maintenance/inventory_menu.php" data-inline ="true" data-iconpos="" data-icon="inventory" />
<input type="submit" formaction="/crm/maintenance/purchase_menu.php" data-inline ="true" data-iconpos="" data-icon="purchase" />
<input type="submit" formaction="/crm/maintenance/sales_menu.php" data-inline ="true" data-iconpos="" data-icon="sales" />
</form>
答案 0 :(得分:0)
你可以使用ajax。这意味着您可以向后端(php)发出请求,询问check_rights();
,然后获得响应。但是,什么
你试过用php非常接近。看看这个
<input type="submit" formaction= "<?php echo (check_rights("maintenance"))? '"/crm/maintenance/maintenance_menu.php' : '":"myalert()"' ;?> " data-inline ="true" data-iconpos="" data-icon="maintenance" />'
...这假设check_rights返回布尔值或0/1。