下面的代码显示了我正在处理的网站的登录/注册用户和未登录用户的链接。用户登录到名为“users”的表,该表检索其 SESSION 主键 (users_id) 并显示登录的链接。
我想做的是一个脚本,它根据“users_type”字段(也在“users”表中)中的值来更改显示的链接。
不同的“用户类型”是销售、管理员、服务、维护和管理。下面显示了如果“user_type”是 Sales 会发生什么。
我所追求的是一个脚本,如果登录的人将“Admin”作为“user_type”(或“service.php”作为“用户类型”),则该脚本会将“sales.php”链接更改为“admin.php”服务”等)。
任何帮助或正确方向的观点将不胜感激
<?php # loginnav.php>
if (isset($_SESSION['users_id']) AND
(substr($_SERVER['PHP_SELF'], -10)
!= 'logout.php')) {
echo '
<ul id="navlist">
<li><a href="welcome.php">Welcome</a></li>
<li><a href="sales.php">SALES</a></li>
<li><a href="logout.php">Log out</a></li>
</ul>
';
} else { // Not logged in.
echo ' <ul id="navlist">
<li><a href="login.php">Login</a></li>
</ul>
';
}
?>
最佳答案
也许我误解了您的要求,但如果我没有误解,那么当用户的角色为“管理员”时,您希望更改 admin/sales.php 的链接表单。如果是这种情况,下面的代码应该可以工作:
$link = $_SESSION['role'] == 'Admin' : 'Admin' ? 'Sales';
echo '<li><a href="', lcfirst($link), '.php'">', $link ,'</a></li>';
编辑
根据您下面的评论,听起来文件名和 user_type 始终相同,因此您可以这样做:
echo '<li><a href="', lcfirst($_SESSION['user_type']) ,'.php">', $_SESSION['user_type'] ,'</a></li>';
这将生成 file_name.php
,其中 file_name
是 session 的 user_type,第一个字母为小写,并添加 .php
。这应该可行。
关于php - 根据 PHP 字段值显示链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20135227/