Heim >php教程 >php手册 >php中使用session防止用户非法登录后台的方法

php中使用session防止用户非法登录后台的方法

WBOY
WBOYOriginal
2016-06-06 20:11:571217Durchsuche

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

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

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

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

登录页面:login.php

复制代码 代码如下:

用户登录页面



用户名:

密  码:



if(!empty($_GET['errno'])){
 if($_GET['errno']==1){
  echo "用户名或密码错误";
 }else if($_GET['errno']==2){
  echo "请输入用户名密码";
 }else if($_GET['errno']==3){
  echo "非法访问,请输入用户名和密码";
 }
}
?>

登录信息处理页面:loginProcess.php

复制代码 代码如下:

//这里主要讲session,关于登录信息验证,就不涉及到数据库了
//接收登录信息,保存session
if(!empty($_POST['sub'])){
 if($_POST['username']=="admin" && $_POST['pwd']=="admin"){
  echo "登录成功";
  session_start();//开启session
  $_SESSION['username'] = $_POST['username'];//将登录名保存到session中
  header("Location: admin.php");
  exit();
 }else{
  header("Location: login.php?errno=1");
  exit();
 }
}else{
 header("Location: login.php?errno=2");
 exit();
}
?>

后台文件:admin.php

复制代码 代码如下:

session_start();
if(empty($_SESSION['username'])){
 header("Location: login.php?errno=3");
 exit();
}
echo "你是管理员,你现在拥有后台管理权限";
?>

希望本文所述对大家的php程序设计有所帮助。

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn