停止对.html页面的直接访问,而不重新定向到login.php

停止对.html页面的直接访问,而不重新定向到login.php,php,session,reference,Php,Session,Reference,我一直在寻找一个答案,以便检查根目录中或外部的所有其他.html页面是否发生了会话。如果不将访问者引导回index.php,则在public_html中设置登录名。 有没有人能解决这个问题?如果是,如果没有会话重定向,我将把它放在哪里? 因此,如果有人直接访问www.site.com/here.html,php将运行,并查看会话是否已安装,如果未安装,将重定向到www.site.com/login.php。使用以下方法: <?php if(!session_id()){ heade

我一直在寻找一个答案,以便检查根目录中或外部的所有其他.html页面是否发生了会话。如果不将访问者引导回index.php,则在public_html中设置登录名。 有没有人能解决这个问题?如果是,如果没有会话重定向,我将把它放在哪里? 因此,如果有人直接访问www.site.com/here.html,php将运行,并查看会话是否已安装,如果未安装,将重定向到www.site.com/login.php。

使用以下方法:

<?php
if(!session_id()){
    header('Location: /index.php');
    exit;
}
?>
要使其工作,在用户登录时,您需要设置

$_SESSION['user'] = 'something'; // a real value here!

好的,亚历克斯,这是我想到的,但还没有运行。只是想看看我是否能接近。 当然我不是,这是我第一次尝试将这种功能添加到站点

<?php
    function menuOptions($menuOptions)
  {
    $menu1 = array(
        'Marketing Dept.' =>('text'=>'Marketing Dept.', 'Welcome.html'=>'?p=home'),
        'Printing' =>('text'=>'Printing', 'Printing.html'=>'?p=Printing'),
        'Email Marketing' =>('text'=>'Email Marketing', 'Emailing.html'=>'?p=Emailing'),
        'Website Development' =>('text'=>'Website Development', 'Website.html'=>'?p=Website'),
        'Help' =>('text'=>'Help', 'Help.html'=>'?p=Help'),
        'Logout' =>('text'=>'Logout', 'logout.php'=>'?p=Logout'),
    );
    $menu2 = array(
        'Marketing Dept.' =>('text'=>'Marketing Dept.', 'Welcome.html'=>'?p=home'),
        'Printing' =>('text'=>'Printing', 'Printing.html'=>'?p=Printing'),
        'Email Marketing' =>('text'=>'Email Marketing', 'Emailing.html'=>'?p=Emailing'),
        'Website Development' =>('text'=>'Website Development', 'Website.html'=>'?p=Website'),
        'Marketing-Projects' =>('text'=>'Marketing-Projects', 'Marketing-Projects.html'=>'?p=Marketing-Projects'),
        'MarketingSchedules' =>('text'=>'Marketing Department Schedules', 'MarketingSchedules.html'),   
        'MarketingDepartmentSchedules' =>('text'=>"Marketing Department Schedules, MarketingDepartmentSchedules.html"),
        'Help' =>('text'=>'Help', 'Help.html'=>'?p=Help'),
        'Logout' =>('text'=>'Logout', 'logout.php'=>'?p=Logout'),
    );
    $menu3 = array(
        'Marketing Dept.' =>('text'=>'Marketing Dept.', 'Welcome.html'=>'?p=home'),
        'Printing' =>('text'=>'Printing', 'Printing.html'=>'?p=Printing'),
        'Email Marketing' =>('text'=>'Email Marketing', 'Emailing.html'=>'?p=Emailing'),
        'Website Development' =>('text'=>'Website Development', 'Website.html'=>'?p=Website'),
        'Marketing-Projects' =>('text'=>'Marketing-Projects', 'Marketing-Projects.html'=>'?p=Marketing-Projects'),
        'MarketingSchedules' =>('text'=>'Marketing Department Schedules', 'MarketingSchedules.html'),   
        'MarketingDepartmentSchedules' =>('text'=>"Marketing Department Schedules, MarketingDepartmentSchedules.html"),
        'MarketingExpenseReports' =>('text'=>"Marketing Expense Reports", 'MarketingExpenseReports.php'),
        'Help' =>('text'=>'Help', 'Help.html'=>'?p=Help'),
        'Logout' =>('text'=>'Logout', 'logout.php'=>'?p=Logout'),
    );
    $menuAdmin = array(
        'Marketing Dept.' =>('text'=>'Marketing Dept.', 'Welcome.html'=>'?p=home'),
        'Printing' =>('text'=>'Printing', 'Printing.html'=>'?p=Printing'),
        'Email Marketing' =>('text'=>'Email Marketing', 'Emailing.html'=>'?p=Emailing'),
        'Website Development' =>('text'=>'Website Development', 'Website.html'=>'?p=Website'),
        'Marketing-Projects' =>('text'=>'Marketing-Projects', 'Marketing-Projects.html'=>'?p=Marketing-Projects'),
        'MarketingSchedules' =>('text'=>'Marketing Department Schedules', 'MarketingSchedules.html'),   
        'MarketingDepartmentSchedules' =>('text'=>"Marketing Department Schedules, MarketingDepartmentSchedules.html"),
        'MarketingExpenseReports' =>('text'=>"Marketing Expense Reports", 'MarketingExpenseReports.php'),
        'Help' =>('text'=>'Help', 'Help.html'=>'?p=Help'),
        'Logout' =>('text'=>'Logout', 'logout.php'=>'?p=Logout'),
    );
}


    function aprovedusers($aprovedusers)
{
    // setting aproved users list 1 for sales department
    $aprovedusers1=array("user1");

    // setting aproved users list 2
    $aprovedusers2=array("user1","user2");

    // setting aproved users list 3 for marketing department
    $aprovedusers3=array("user1","user2","user3");

    // setting aproved users list admin for admin
    $aprovedusersAdmin=array("Admin1");

    $msg1 = echo "hello";
    $msg2 = echo "must login";
    $msg3 = echo "hello Marketing";
    $msg4 = echo "hello Admin";

}

function getloggedin($userloggedin)
{
    if($_SESSION['userlogin'] == ''){
    echo $msg1 'userlogin';
    } else {
    header("Location: logout.php");
}
echo $msg2;




  echo '<div id="'. $userlogin .'">';

 ?>
 <html lang="en">
 <head>
  <meta charset="UTF-8">
  <title>Markting Home</title>
 </head>
 <header>
   <div id="Menu">
    <div id="<?php echo $userloggedin ?>" >
        <?php //show only approved menu for what menu user is approved for ?>
        <div id="<?php echo $menuOptions ?>" >
            <div><?php echo $menu1?></div>
            <div><?php echo $menu2?></div>
            <div><?php echo $menu3?></div>
            <div><?php echo $menuAdmin?></div>
        </div>
    </div>
   </div>
     <body>
       <div id="content">
     </div>
   </body>
  </header>

如果你有什么好的建议,我会通宵学习

GoogleMod重写并确保您指示Apache将.html文件视为PHP;如果这就是问题所在。您还可以使用条件语句,检查会话是否已设置。只是看到了此注释,还没有进行足够的研究,了解如何实现Apache,以便使用它将.html文件视为.php文件。但我似乎需要这样做,因为我的梦想一定会实现。index.php是我设置用户登录的地方。使用:$_会话['user']='something';是否安全某个东西将等于用户名?这在.html页面的顶部还是仅在.php页面的顶部工作?我被告知很多次我可以在任何html页面的顶部工作,但这从来都不起作用。要在html文件中运行php代码,请遵循此@handpaintedstudio。您是否安装了php?是的,但我是新的,但不是那么新的。只是想在学习更多方面寻求帮助。
<?php
    function menuOptions($menuOptions)
  {
    $menu1 = array(
        'Marketing Dept.' =>('text'=>'Marketing Dept.', 'Welcome.html'=>'?p=home'),
        'Printing' =>('text'=>'Printing', 'Printing.html'=>'?p=Printing'),
        'Email Marketing' =>('text'=>'Email Marketing', 'Emailing.html'=>'?p=Emailing'),
        'Website Development' =>('text'=>'Website Development', 'Website.html'=>'?p=Website'),
        'Help' =>('text'=>'Help', 'Help.html'=>'?p=Help'),
        'Logout' =>('text'=>'Logout', 'logout.php'=>'?p=Logout'),
    );
    $menu2 = array(
        'Marketing Dept.' =>('text'=>'Marketing Dept.', 'Welcome.html'=>'?p=home'),
        'Printing' =>('text'=>'Printing', 'Printing.html'=>'?p=Printing'),
        'Email Marketing' =>('text'=>'Email Marketing', 'Emailing.html'=>'?p=Emailing'),
        'Website Development' =>('text'=>'Website Development', 'Website.html'=>'?p=Website'),
        'Marketing-Projects' =>('text'=>'Marketing-Projects', 'Marketing-Projects.html'=>'?p=Marketing-Projects'),
        'MarketingSchedules' =>('text'=>'Marketing Department Schedules', 'MarketingSchedules.html'),   
        'MarketingDepartmentSchedules' =>('text'=>"Marketing Department Schedules, MarketingDepartmentSchedules.html"),
        'Help' =>('text'=>'Help', 'Help.html'=>'?p=Help'),
        'Logout' =>('text'=>'Logout', 'logout.php'=>'?p=Logout'),
    );
    $menu3 = array(
        'Marketing Dept.' =>('text'=>'Marketing Dept.', 'Welcome.html'=>'?p=home'),
        'Printing' =>('text'=>'Printing', 'Printing.html'=>'?p=Printing'),
        'Email Marketing' =>('text'=>'Email Marketing', 'Emailing.html'=>'?p=Emailing'),
        'Website Development' =>('text'=>'Website Development', 'Website.html'=>'?p=Website'),
        'Marketing-Projects' =>('text'=>'Marketing-Projects', 'Marketing-Projects.html'=>'?p=Marketing-Projects'),
        'MarketingSchedules' =>('text'=>'Marketing Department Schedules', 'MarketingSchedules.html'),   
        'MarketingDepartmentSchedules' =>('text'=>"Marketing Department Schedules, MarketingDepartmentSchedules.html"),
        'MarketingExpenseReports' =>('text'=>"Marketing Expense Reports", 'MarketingExpenseReports.php'),
        'Help' =>('text'=>'Help', 'Help.html'=>'?p=Help'),
        'Logout' =>('text'=>'Logout', 'logout.php'=>'?p=Logout'),
    );
    $menuAdmin = array(
        'Marketing Dept.' =>('text'=>'Marketing Dept.', 'Welcome.html'=>'?p=home'),
        'Printing' =>('text'=>'Printing', 'Printing.html'=>'?p=Printing'),
        'Email Marketing' =>('text'=>'Email Marketing', 'Emailing.html'=>'?p=Emailing'),
        'Website Development' =>('text'=>'Website Development', 'Website.html'=>'?p=Website'),
        'Marketing-Projects' =>('text'=>'Marketing-Projects', 'Marketing-Projects.html'=>'?p=Marketing-Projects'),
        'MarketingSchedules' =>('text'=>'Marketing Department Schedules', 'MarketingSchedules.html'),   
        'MarketingDepartmentSchedules' =>('text'=>"Marketing Department Schedules, MarketingDepartmentSchedules.html"),
        'MarketingExpenseReports' =>('text'=>"Marketing Expense Reports", 'MarketingExpenseReports.php'),
        'Help' =>('text'=>'Help', 'Help.html'=>'?p=Help'),
        'Logout' =>('text'=>'Logout', 'logout.php'=>'?p=Logout'),
    );
}


    function aprovedusers($aprovedusers)
{
    // setting aproved users list 1 for sales department
    $aprovedusers1=array("user1");

    // setting aproved users list 2
    $aprovedusers2=array("user1","user2");

    // setting aproved users list 3 for marketing department
    $aprovedusers3=array("user1","user2","user3");

    // setting aproved users list admin for admin
    $aprovedusersAdmin=array("Admin1");

    $msg1 = echo "hello";
    $msg2 = echo "must login";
    $msg3 = echo "hello Marketing";
    $msg4 = echo "hello Admin";

}

function getloggedin($userloggedin)
{
    if($_SESSION['userlogin'] == ''){
    echo $msg1 'userlogin';
    } else {
    header("Location: logout.php");
}
echo $msg2;




  echo '<div id="'. $userlogin .'">';

 ?>
 <html lang="en">
 <head>
  <meta charset="UTF-8">
  <title>Markting Home</title>
 </head>
 <header>
   <div id="Menu">
    <div id="<?php echo $userloggedin ?>" >
        <?php //show only approved menu for what menu user is approved for ?>
        <div id="<?php echo $menuOptions ?>" >
            <div><?php echo $menu1?></div>
            <div><?php echo $menu2?></div>
            <div><?php echo $menu3?></div>
            <div><?php echo $menuAdmin?></div>
        </div>
    </div>
   </div>
     <body>
       <div id="content">
     </div>
   </body>
  </header>