php如何禁止未登录用户直接跳转访问后台

本文小编为大家详细介绍“php如何禁止未登录用户直接跳转访问后台”,内容详细,步骤清晰,细节处理妥当,希望这篇“php如何禁止未登录用户直接跳转访问后台”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

目前创新互联公司已为数千家的企业提供了网站建设、域名、网页空间、网站运营、企业网站设计、商洛网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

一、session 实现登陆

为了保障用户信息安全,在网站开发中常常采用 session 储存用户的基本信息,包括用户 ID、用户名、密码等等,使用 session 登录还能有效防止一些网站安全问题,让网站运行更加稳定和安全。

session 是一种在服务器端储存和访问信息的技术,其优势在于可以储存和使用非常灵活。在 PHP 中,使用 session 需要打开 session 开关并设置 session save_path,在登陆后使用 session_register() 函数将用户信息储存到 session 中,代码实现如下:

<?php
session_start();
$username="admin";//定义用户名
$password="123456";//定义密码
if($_POST['username']==$username && $_POST['password']==$password)
{
  $_SESSION['username']=$username;//将用户名存入内存中
  $_SESSION['password']=$password;//将密码存入内存中
  header("Location: admin.php");//跳转到后台页面
  exit();
}
?>

二、实现禁止未登录用户直接访问后台的功能

实现禁止未登录用户直接访问后台的功能,需要在后台页面中判断是否已经登陆。可以在后台页面的头部加上以下代码:

<?php
session_start();
if(!isset($_SESSION['username'])||!isset($_SESSION['password']))
{
    header("Location: index.php");//跳转到登陆页面(也可自定义其他跳转页面)
    exit();
}
?>

代码解释:首先启用 session,然后判断是否有用户已经登录,如果没有则直接跳转回登陆页面,并退出 PHP 运行。

为了更好的信息安全性,建议在 session_start() 后设置 session_regenerate_id() 函数来更新 session_id,以增强网站的安全性。

三、完整示例代码

下面是完整的禁止未登录用户直接访问后台的示例代码,可供参考:

<?php
//login.php 登陆页面
session_start();
$username="admin";//定义用户名
$password="123456";//定义密码
if($_POST['username']==$username && $_POST['password']==$password)
{
  $_SESSION['username']=$username;
  $_SESSION['password']=$password;
  header("Location: admin.php");//跳转到后台页面
  exit();
}
?>

<?php
//admin.php 后台页面
session_start();
if(!isset($_SESSION['username'])||!isset($_SESSION['password']))
{
    header("Location: login.php");//跳转到登陆页面(也可自定义其他跳转页面)
    exit();
}

session_regenerate_id(true);// 更新 session_id
?>

读到这里,这篇“php如何禁止未登录用户直接跳转访问后台”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注创新互联行业资讯频道。

当前题目:php如何禁止未登录用户直接跳转访问后台
当前路径:https://www.cdcxhl.com/article26/ghgocg.html

成都网站建设公司_创新互联,为您提供服务器托管网站改版云服务器网站维护网站制作App设计

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

成都定制网站网页设计