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


Posted in PHP onJanuary 27, 2015

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

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

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

登录页面:login.php

<h2>用户登录页面</h2>

<form action="loginProcess.php" method="post">

用户名:<input type="text" name="username"><br />

密  码:<input type="password" name="pwd"><br />

<input type="submit" name="sub" value="登录后台">

</form>

<?php

if(!empty($_GET['errno'])){

 if($_GET['errno']==1){

  echo "用户名或密码错误";

 }else if($_GET['errno']==2){

  echo "请输入用户名密码";

 }else if($_GET['errno']==3){

  echo "非法访问,请输入用户名和密码";

 }

}

?>

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

<?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

<?php

session_start();

if(empty($_SESSION['username'])){

 header("Location: login.php?errno=3");

 exit();

}

echo "你是管理员,你现在拥有后台管理权限";

?>

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

PHP 相关文章推荐
php注入实例
Oct 09 PHP
php文件上传表单摘自drupal的代码
Feb 15 PHP
PHP在特殊字符前加斜杠的实现代码
Jul 17 PHP
php UBB 解析实现代码
Nov 27 PHP
PHP的基本常识小结
Jul 05 PHP
10个超级有用值得收藏的PHP代码片段
Jan 22 PHP
php验证码的制作思路和实现方法
Nov 12 PHP
joomla组件开发入门教程
May 04 PHP
基于thinkPHP3.2实现微信接入及查询token值的方法
Apr 18 PHP
PHP让数组中有相同值的组成新的数组实例
Dec 31 PHP
php+iframe 实现上传文件功能示例
Mar 04 PHP
PHP 判断字符串是中文还是英文, 或者是中英混合
Mar 09 PHP
php中session与cookie的比较
Jan 27 #PHP
php实现session自定义会话处理器的方法
Jan 27 #PHP
php实现检查文章是否被百度收录
Jan 27 #PHP
php创建session的方法实例详解
Jan 27 #PHP
PHP连接SQLServer2005的方法
Jan 27 #PHP
php去除html标记的原生函数详解
Jan 27 #PHP
分享下php5类中三种数据类型的区别
Jan 26 #PHP
You might like
咖啡冲泡指南 咖啡有哪些制作方式 单品咖啡 意式咖啡
2021/03/06 冲泡冲煮
PHP使用ob_start生成html页面的方法
2014/11/07 PHP
关于PHP定时发送服务的解决办法
2017/04/23 PHP
PHP实现验证码校验功能
2017/11/16 PHP
php+redis实现商城秒杀功能
2020/11/19 PHP
php实现记事本案例
2020/10/20 PHP
javascript parseInt 函数分析(转)
2009/03/21 Javascript
Jquery easyUI 更新行示例
2014/03/06 Javascript
chrome下img加载对height()的影响示例探讨
2014/05/26 Javascript
jQuery实现返回顶部功能
2016/02/23 Javascript
Node.js刷新session过期时间的实现方法推荐
2016/05/18 Javascript
jquery显示隐藏元素的实现代码
2016/05/19 Javascript
JavaScript提高网站性能优化的建议(二)
2016/07/24 Javascript
jQuery内容过滤选择器用法示例
2016/09/09 Javascript
详解Jquery的事件操作和文档操作
2016/12/19 Javascript
Chrome浏览器的alert弹窗禁止再次弹出后恢复的方法
2016/12/30 Javascript
JS身份证信息验证正则表达式
2017/06/12 Javascript
JS改变页面颜色源码分享
2018/02/24 Javascript
python实现井字棋游戏
2020/03/30 Python
Python中py文件转换成exe可执行文件的方法
2019/06/14 Python
Python字符串格式化f-string多种功能实现
2020/05/07 Python
Python学习之os模块及用法
2020/06/03 Python
python如何求圆的面积
2020/07/01 Python
Python实现树莓派摄像头持续录像并传送到主机的步骤
2020/11/30 Python
基于Python的接口自动化unittest测试框架和ddt数据驱动详解
2021/01/27 Python
css3 边框、背景、文本效果的实现代码
2018/03/21 HTML / CSS
日本卡普空电视游戏软件公司官方购物网站:e-CAPCOM
2018/07/17 全球购物
莫斯科制造商的廉价皮大衣:Fursk
2020/06/09 全球购物
Java面试题:Java类的Main方法如果是Private将会怎么样
2016/08/18 面试题
机电一体化专业应届本科生求职信
2013/09/27 职场文书
大学生个人自我鉴定
2013/12/03 职场文书
体育教育专业自荐信范文
2013/12/20 职场文书
捐赠仪式主持词
2014/03/19 职场文书
大学感恩节活动策划方案
2014/10/11 职场文书
React中的Context应用场景分析
2021/06/11 Javascript
windows11怎么查看自己安装的版本号? win11版本号的查看方法
2021/11/21 数码科技