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中将时间差转换为字符串提示的实现代码
Aug 08 PHP
php页面跳转代码 输入网址跳转到你定义的页面
Mar 28 PHP
destoon实现调用当前栏目分类及子分类和三级分类的方法
Aug 21 PHP
PHP中soap的用法实例
Oct 24 PHP
PHP解析RSS的方法
Mar 05 PHP
Codeigniter检测表单post数据的方法
Mar 21 PHP
PHP中使用substr()截取字符串出现中文乱码问题该怎么办
Oct 21 PHP
Zend Framework动作助手Redirector用法实例详解
Mar 05 PHP
YII中Ueditor富文本编辑器文件和图片上传的配置图文教程
Mar 15 PHP
php使用PDO从数据库表中读取数据的实现方法(必看)
Jun 02 PHP
php中的buffer缓冲区用法分析
May 31 PHP
为你的 Laravel 验证器加上多验证场景的实现
Apr 07 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
PHP字符串的编码问题的详细介绍
2013/04/27 PHP
ThinkPHP中自定义目录结构的设置方法
2014/08/15 PHP
PHP获取一个字符串中间一部分字符的方法
2014/08/19 PHP
WAF的正确bypass
2017/01/05 PHP
详解php中curl返回false的解决办法
2019/03/18 PHP
浅谈laravel aliases别名的原理
2019/10/24 PHP
phpstudy隐藏index.php的方法
2020/09/21 PHP
myEvent.js javascript跨浏览器事件框架
2011/10/24 Javascript
原生js实现fadein 和 fadeout淡入淡出效果
2014/06/05 Javascript
AngularJS表单编辑提交功能实例
2015/02/13 Javascript
jQuery实现自动与手动切换的滚动新闻特效代码分享
2015/08/27 Javascript
分享Javascript实用方法二
2015/12/13 Javascript
JS设置下拉列表框当前所选值的方法
2015/12/22 Javascript
jQuery autoComplete插件两种使用方式及动态改变参数值的方法详解
2016/10/24 Javascript
JavaScript实现Fly Bird小游戏
2016/12/15 Javascript
利用js查找数组中指定元素并返回该元素的所有索引示例
2017/03/29 Javascript
微信小程序视图控件与bindtap之间的问题的解决
2019/04/08 Javascript
vue 动态设置img的src地址无效,npm run build 后找不到文件的解决
2020/07/26 Javascript
vue setInterval 定时器失效的解决方式
2020/07/30 Javascript
跟老齐学Python之玩转字符串(3)
2014/09/14 Python
Python打包可执行文件的方法详解
2016/09/19 Python
python遍历文件目录、批量处理同类文件
2019/08/31 Python
python 实现目录复制的三种小结
2019/12/04 Python
Python编程快速上手——正则表达式查找功能案例分析
2020/02/28 Python
Python使用pickle进行序列化和反序列化的示例代码
2020/09/22 Python
Kickers鞋英国官网:男士、女士和儿童鞋
2021/03/08 全球购物
.NET程序员的数据库面试题
2012/10/10 面试题
Final类有什么特点
2012/04/25 面试题
QQ空间主人寄语大全
2014/04/12 职场文书
小班下学期评语
2014/05/04 职场文书
专科应届毕业生求职信
2014/06/04 职场文书
优秀教师推荐材料
2014/12/16 职场文书
雨花台导游词
2015/02/06 职场文书
人工作失职检讨书
2015/05/05 职场文书
2016年寒假生活小结
2015/10/10 职场文书
Win10此设备不支持接收Miracast无法投影的解决方法
2022/07/07 数码科技