Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何阻止人们访问需要登录的隐藏页面?_Php_Html_Session - Fatal编程技术网

Php 如何阻止人们访问需要登录的隐藏页面?

Php 如何阻止人们访问需要登录的隐藏页面?,php,html,session,Php,Html,Session,我在学校做一个项目,我需要知道一个简单的方法来阻止人们在没有会议的情况下进入网站。我有很多页面,我不相信我花时间在每个页面上粘贴代码。由于php,我的菜单栏包含在每个页面中,所以我想知道我必须在菜单中输入什么类型的代码才能阻止没有会话的用户。其余的内容代码都在我想隐藏的页面上。我相信您可以通过键入url登录,并允许用户查看为登录用户提供的隐藏页面 如果您不想使用会话,请使用cookie <?php /*Just add this piece of PHP code to top of an

我在学校做一个项目,我需要知道一个简单的方法来阻止人们在没有会议的情况下进入网站。我有很多页面,我不相信我花时间在每个页面上粘贴代码。由于php,我的菜单栏包含在每个页面中,所以我想知道我必须在菜单中输入什么类型的代码才能阻止没有会话的用户。其余的内容代码都在我想隐藏的页面上。我相信您可以通过键入url登录,并允许用户查看为登录用户提供的隐藏页面

如果您不想使用会话,请使用cookie

<?php
/*Just add this piece of PHP code to top of any page you 
   don't want not-logged in users to see */
if (!isset($_COOKIE['logged']))
    header("Location: login.php");  //It redirects the user to your login page

?>

<html>
   <body>
      ...
   </body>
</html>

如果您不想使用会话,请使用cookie

<?php
/*Just add this piece of PHP code to top of any page you 
   don't want not-logged in users to see */
if (!isset($_COOKIE['logged']))
    header("Location: login.php");  //It redirects the user to your login page

?>

<html>
   <body>
      ...
   </body>
</html>

请不要使用普通cookie。课程是一种方式。或者,如果不能使用会话并且必须使用cookie,请首先对cookie进行签名,以便能够验证您的应用程序是否确实是设置cookie的应用程序


<?php
session_start();

if (!isset($_SESSION['authenticated'])) {
  header('Location: login.php');
  exit; 
}

... whatever logged in users should see ..




请不要使用普通饼干。课程是一种方式。或者,如果不能使用会话并且必须使用cookie,请首先对cookie进行签名,以便能够验证您的应用程序是否确实是设置cookie的应用程序


<?php
session_start();

if (!isset($_SESSION['authenticated'])) {
  header('Location: login.php');
  exit; 
}

... whatever logged in users should see ..




请记住,如果用户是使用会话变量登录的。在每个网页的开头检查此变量。如果没有设置,重定向到登录页面。我知道,如果我把它放在我的菜单栏中,它是指向每个页面的链接,它仍然可以工作。如果用户使用会话变量登录,它可能会重复。在每个网页的开头检查此变量。如果没有设置,请重定向到登录页面。我知道,如果我把它放在菜单栏中,它是指向每个页面的链接,它仍然可以工作。是否有任何方法可以对会话执行此操作?这确实是不安全的。要登录,您只需创建cookie“logged”。您根本不需要用户名或密码。@bencoder,但用户无法从客户端看到他们可以。他们不可能找到PHP源代码。@MrLister-这是默默无闻的安全性。这是一个非常糟糕的主意。@Alohci让我们同意不同意吧。我的看法是,对于黑客来说,猜测cookie名称与猜测网站上的用户名和密码一样耗时。有没有办法在会话中做到这一点?这真的很不安全。要登录,您只需创建cookie“logged”。您根本不需要用户名或密码。@bencoder,但用户无法从客户端看到他们可以。他们不可能找到PHP源代码。@MrLister-这是默默无闻的安全性。这是一个非常糟糕的主意。@Alohci让我们同意不同意吧。我的看法是,对于黑客来说,猜测cookie名称与猜测网站上的用户名和密码一样耗时。