VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > PHP >
  • php中使用session防止用户非法登录后台的方法

这篇文章主要介绍了php中使用session防止用户非法登录后台的方法,详细分析了session防止用户非法登录后台的原理与相关实现技巧,需要的朋友可以参考下

本文实例讲述了php中使用session防止用户非法登录后台的方法。分享给大家供大家参考。具体如下:

一般来说,我们登录网站后台时,服务器会把登录信息保存到session文件里,并通过读取session文件来判断是否可以进行后台操作。

以下面为例,假如admin.php是我们的后台操作页面,如果没有启用 session,那么,即便是没有登录,用户照样能访问到该页面,这时候,就需要用到 session 来防止用户非法登录到这个页面了。下面是三个文件的代码

登录页面:login.php 代码如下:

  1. <h2>用户登录页面</h2> 
  2. <form action="loginProcess.php" method="post"
  3. 用户名:<input type="text" name="username"><br /> 
  4. 密&nbsp;&nbsp;码:<input type="password" name="pwd"><br /> 
  5. <input type="submit" name="sub" value="登录后台"
  6. </form> 
  7. <?php 
  8. if(!emptyempty($_GET['errno'])){ 
  9.  if($_GET['errno']==1){ 
  10.   echo "用户名或密码错误"
  11.  }else if($_GET['errno']==2){ 
  12.   echo "请输入用户名密码"
  13.  }else if($_GET['errno']==3){ 
  14.   echo "非法访问,请输入用户名和密码"
  15.  } 
  16. ?> 

登录信息处理页面:loginProcess.php 代码如下:

  1. <?php 
  2. //这里主要讲session,关于登录信息验证,就不涉及到数据库了 
  3. //接收登录信息,保存session 
  4. if(!emptyempty($_POST['sub'])){ 
  5.  if($_POST['username']=="admin" && $_POST['pwd']=="admin"){ 
  6.   echo "登录成功"
  7.   session_start();//开启session 
  8.   $_SESSION['username'] = $_POST['username'];//将登录名保存到session中 
  9.   header("Location: admin.php"); 
  10.   exit(); 
  11.  }else
  12.   header("Location: login.php?errno=1"); 
  13.   exit(); 
  14.  } 
  15. }else
  16.  header("Location: login.php?errno=2"); 
  17.  exit(); 
  18. ?> 

后台文件:admin.php 代码如下:

  1. <?php 
  2. session_start(); 
  3. if(emptyempty($_SESSION['username'])){ 
  4.  header("Location: login.php?errno=3"); 
  5.  exit(); 
  6. echo "你是管理员,你现在拥有后台管理权限"
  7. ?>
  8.  

出处:http://www.phpfensi.com/php/20210509/15142.html


相关教程