通过session判断判断用户的操作权限

客户请求端 --index.php :

<?php date_default_timezone_set('Asia/Shanghai'); //设置正确的时区?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script type="text/javascript">
    function check(form)
    {
        //可以直接根据表单里的name进行表单元素的访问!
        if(form.user.value == "")
        {
            alert("请输入用户名");form.user.focus();return false;    
        }
        if(form.pwd.value == "")
        {
            alert("请输入密码");form.user.focus();return false;    
        }
        form.submit();
    }
</script>
</head>

<body>
    <form name="form1" method="post" action="default.php">
        <table width="521" height="394" border="0" cellpadding="0" cellspacing="0">
            <tr>
                <td valign="top" background="image/login.jpg">
                    <table width="521" border="0" cellspacing="0" cellpadding="0">
                        <tr>
                            <td height="24" align="right">用户名:</td>
                            <td height="24" align="left">
                            <input type="text" name="user" id="user" size="20" />
                            </td>
                        </tr>
                        <tr>
                            <td height="24" align="right">密码:</td>
                            <td>
                            <input type="password" name="pwd" id="pwd" size="20" />
                            </td>
                        </tr>
                        <tr align="center">
                            <td height="24" colspan="2">
                            <input type="submit" name="Submit" value="提交" onclick="return check(form);" /><input type="reset" name="Submit2" value="重填" />
                            </td>                            
                        </tr>
                        <tr>
                            <td height="76" align="right">
                            <span class="style1">超级用户:tsoft<br />&nbsp;&nbsp;&nbsp;&nbsp;码:111&nbsp;&nbsp;</span>
                            </td>
                            <td><span class="style1">普通用户:zts<br />&nbsp;&nbsp;&nbsp;&nbsp;码:000</span></td>
                        </tr>
                    </table>
                </td>
            </tr>
        </table>
    </form>
</body>
</html>

 

服务器接收处理端 --default.php :

 

<?php
    session_start();
    $_SESSION['user'] = $_POST['user'];
    $_SESSION['pwd'] = $_POST['pwd'];
?>
<?php
    /*为了防止其他用户非法登陆本系统。要做个验证*/
    if($_SESSION['user'] == "") //如果用户名为空,则弹出提示,并跳转到登陆页
    {
        echo "<script type='text/javascript'>alert('请通过正确的途径登陆本系统!');history.back();</script>";
    }
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>

<body>
    <table align="center" cellpadding="0" cellspacing="0">
        <tr align="center" valign="middle">
            <td style="width:140px; color:red;">
                当前用户:&nbsp;
                <!-- ------------------输出当登陆的用户级别------------------ -->
                <?php
                    if($_SESSION['user'] == "tsoft" && $_SESSION['pwd'] =="111")
                    { echo "管理员";}else{ echo "普通用户";}
                ?>
                &nbsp;&nbsp;
            </td>
            <td width="70"><a href="default.php">博客首页</a></td>
            <td width="70">|&nbsp;<a href="default.php">我的文章</a></td>
            <td width="70">|&nbsp;<a href="default.php">我的相册</a></td>
            <td width="70">|&nbsp;<a href="default.php">音乐在线</a></td>
            <td width="70">|&nbsp;<a href="default.php">修改密码</a></td>
            <?php
                if($_SESSION['user'] == "tsoft" && $_SESSION['pwd'] == "111") //如果当前用户是管理员
                {
            ?>
            <!-- -------------------如果当前用户是管理员,则输出“用户管理”链接-------------------- -->
            <td width="70">|&nbsp;<a href="default.php">用户管理</a></td>
            <?php
                }
            ?>
            <td width="70">|&nbsp;<a href="safe.php">注销用户</a></td>
        </tr>
    </table>
</body>
</html>

 

 

注销用户页 --safe.php :

<?php
    /*注销用户页面*/
    session_start();   //初始化session
    unset($_SESSION['user']); //删除用户名会话变量
    unset($_SESSION['pwd']); //删除密码会话变量
    session_destroy(); //删除所有的会话变量
    header("location:index.php");  //利用header()函数向客户端发送原始的http报头。以达到跳转到首页登录的界面
?>

 

 

转载于:https://www.cnblogs.com/clouds008/archive/2013/06/08/3127841.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在MVC中,可以通过多种方式来判断用户是否有权限跳转到某个页面。其中一种方式是在每个页面执行前判断当前用户是否登录,若未登录则跳转到登录页面。这可以通过在每个页面的控制器中添加判断逻辑来实现。例如,在控制器的Index方法中,可以通过判断Session中是否存在登录用户的信息来确定用户是否已登录。如果Session中的登录用户信息为空,则可以使用RedirectToAction方法将用户重定向到登录页面。这样,如果用户未登录,就无法访问该页面。\[1\] 另一种方式是使用全局过滤器来校验用户是否登录。可以创建一个校验类,继承ActionFilterAttribute,并在其中重写OnActionExecuted方法。在该方法中,可以判断Session中是否存在登录用户的信息。如果不存在,则可以使用Response.Redirect方法将用户重定向到登录页面。然后,在全局过滤器中注册该校验类,以便在每个请求执行前进行校验。这样,无论用户访问哪个页面,都会先执行校验逻辑,确保用户已登录。\[3\] 另外,还可以在页面的servlet中判断Session中是否存在登录用户的信息。如果不存在,则可以使用sendRedirect方法将用户重定向到登录页面。这种方式适用于Java Web应用程序。\[2\] #### 引用[.reference_title] - *1* *3* [.Net Mvc判断用户是否登陆、未登陆跳回登陆页、三种完美解决方案](https://blog.csdn.net/weixin_30548917/article/details/102090124)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [MVC 判断用户是否登录](https://blog.csdn.net/yooppa/article/details/123487365)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值