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中获取关键词及所属来源搜索引擎名称的代码
Feb 15 PHP
PHP数组交集的优化代码分析
Mar 06 PHP
第4章 数据处理-php正则表达式-郑阿奇(续)
Jul 04 PHP
ajax php传递和接收变量实现思路及代码
Dec 19 PHP
PHP操作Memcache实例介绍
Jun 14 PHP
php setcookie(name, value, expires, path, domain, secure) 参数详解
Jun 28 PHP
PHP基于数组实现的分页函数实例
Aug 20 PHP
php生成百度sitemap站点地图类函数实例
Oct 17 PHP
php使用wordwrap格式化文本段落的方法
Mar 17 PHP
php实现的简易扫雷游戏实例
Jul 09 PHP
php分页查询mysql结果的base64处理方法示例
May 18 PHP
PHP中register_shutdown_function函数的基础介绍与用法详解
Nov 28 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
dedecms防止FCK乱格式化你的代码的修改方法
2007/03/17 PHP
PHP print类函数使用总结
2010/06/25 PHP
php模拟asp中的XmlHttpRequest实现http请求的代码
2011/03/24 PHP
php中一个有意思的日期逻辑处理
2012/03/25 PHP
CodeIgniter配置之SESSION用法实例分析
2016/01/19 PHP
laravel框架语言包拓展实现方法分析
2019/11/22 PHP
jquery获得下拉框值的代码
2011/08/13 Javascript
关于图片按比例自适应缩放的js代码
2011/10/30 Javascript
jquery-tips悬浮提示插件分享
2015/07/31 Javascript
jQuery获取父元素及父节点的方法小结
2016/04/14 Javascript
前端跨域的几种解决方式总结(推荐)
2017/08/16 Javascript
基于JavaScript表单脚本(详解)
2017/10/18 Javascript
解决vue A对象赋值给B对象,修改B属性会影响到A的问题
2018/09/25 Javascript
jQuery利用FormData上传文件实现批量上传
2018/12/04 jQuery
RxJS的入门指引和初步应用
2019/06/15 Javascript
vue 实现微信浮标效果
2019/09/01 Javascript
[02:38]2018DOTA2亚洲邀请赛赛前采访-VGJ.T
2018/04/03 DOTA
基于Python实现对PDF文件的OCR识别
2016/08/05 Python
使用Django Form解决表单数据无法动态刷新的两种方法
2017/07/14 Python
Python实现获取nginx服务器ip及流量统计信息功能示例
2018/05/18 Python
python3实现点餐系统
2019/01/24 Python
Python 文件操作之读取文件(read),文件指针与写入文件(write),文件打开方式示例
2019/09/29 Python
python基于socket实现的UDP及TCP通讯功能示例
2019/11/01 Python
Python实现数值积分方式
2019/11/20 Python
使用python快速实现不同机器间文件夹共享方式
2019/12/22 Python
解决python ThreadPoolExecutor 线程池中的异常捕获问题
2020/04/08 Python
python 使用建议与技巧分享(四)
2020/08/18 Python
详解selenium + chromedriver 被反爬的解决方法
2020/10/28 Python
会计专业应届生求职信
2013/11/24 职场文书
2014年道德讲堂实施方案
2014/03/05 职场文书
公共场所禁烟标语
2014/06/25 职场文书
公司财务会计主管应聘求职信
2014/09/26 职场文书
导游词怎么写
2015/02/04 职场文书
企业工会工作总结2015
2015/05/13 职场文书
维护民族团结心得体会2016
2016/01/15 职场文书
科学家研发出新型速效酶,可在 24 小时内降解塑料制品
2022/04/29 数码科技