Php 合并$Session和$Check

Php 合并$Session和$Check,php,session,Php,Session,在Home.html文件的头中,我使用$session函数,如下所示 <?php @session_start(); if( $_SESSION['flag']==1) echo'<script>window.location="login.html";</script>'; ?> 那么我现在的问题是,我需要在html文件的头中(在会话函数中)更改什么,以便它可以与$Check函数组合?”您必须将php和javascript组合起来,有点像下面的示例: $

在Home.html文件的头中,我使用$session函数,如下所示

<?php
@session_start();
if(  $_SESSION['flag']==1)
echo'<script>window.location="login.html";</script>';
?>

那么我现在的问题是,我需要在html文件的头中(在会话函数中)更改什么,以便它可以与$Check函数组合?”

您必须将php和javascript组合起来,有点像下面的示例:

$(document).ready(function(){
    var check = <?= $_SESSION['flag'] ?>;

    $("span").click(function(){
        if(check==0){
            $("#login").show();
            $("#logout").hide();
        } else {
            $("#logout").show();
            $("#login").hide();
        }
    });
});
$(文档).ready(函数(){
var检查=;
$(“span”)。单击(函数(){
如果(检查==0){
$(“#登录”).show();
$(“#注销”).hide();
}否则{
$(“#注销”).show();
$(“#登录”).hide();
}
});
});

所示示例等待$\u SESSION['flag']作为整数值。是否$\u SESSION['flag']是一个字符串,您必须在引号中设置检查变量。

您必须将php和javascript结合起来,有点像下面的示例:

$(document).ready(function(){
    var check = <?= $_SESSION['flag'] ?>;

    $("span").click(function(){
        if(check==0){
            $("#login").show();
            $("#logout").hide();
        } else {
            $("#logout").show();
            $("#login").hide();
        }
    });
});
$(文档).ready(函数(){
var检查=;
$(“span”)。单击(函数(){
如果(检查==0){
$(“#登录”).show();
$(“#注销”).hide();
}否则{
$(“#注销”).show();
$(“#登录”).hide();
}
});
});

所示示例等待$\u SESSION['flag']作为整数值。是否$\u SESSION['flag']是一个必须在引号中设置检查变量的字符串。

使用javascript执行所有这些操作不是一个好主意。用户所需做的只是从浏览器中查看源代码,他们将看到您想要隐藏的页面的所有部分

在发送页面之前,使用PHP确定页面中的内容,而不是隐藏发送的内容


这是一种不好的页面重定向方法,因为它必须将整个页面发送到浏览器,以便javascript将浏览器重定向到另一个页面。 更好的方法:

<?php
    session_start();
    if( ! isset($_SESSION['flag']) || $_SESSION['flag'] == 1 ) {
        header('Location: login.html');
        exit;
    }
?>


现在,PHP只向浏览器发送一个标题,告诉它转到另一个页面。你也不会无缘无故地运行此Scriptp的其余部分。

使用javascript执行所有这些操作不是一个好主意。用户只需从浏览器中查看源代码,他们就会看到你想要隐藏的页面的所有部分

在发送页面之前,使用PHP确定页面中的内容,而不是隐藏发送的内容


这是一种不好的页面重定向方法,因为它必须将整个页面发送到浏览器,以便javascript将浏览器重定向到另一个页面。 更好的方法:

<?php
    session_start();
    if( ! isset($_SESSION['flag']) || $_SESSION['flag'] == 1 ) {
        header('Location: login.html');
        exit;
    }
?>


现在PHP只向浏览器发送一个标题,告诉它转到另一个页面。你也不会无缘无故地运行此scritp的其余部分。

如果你想在未登录时对用户隐藏一些内容,为什么不将HTML内容放在if条件下,如下所示:if($\u SESSION['logedin']){echo'your HTML Code'}是的,这就是我想要做的。我只是有点搞不清楚如何将会话功能与Javascript结合起来。如果您想在未登录时对用户隐藏一些内容,为什么不将HTML内容放在if条件下,如下所示:if($_session['logedin']){echo'your HTML Code'}是的,这就是我想做的。我只是有点困惑如何将会话函数与Javascript结合起来。谢谢,这有助于我改进代码。但我仍然不能接受答案,我只是投票赞成。不过有一点我想知道得更多,那就是在发送页面之前,使用PHP决定页面中的内容e> 你能给我一个关于这个的更多解释的参考吗?再一次,谢谢。谢谢,它帮助我改进了我的代码。但是我仍然不能接受这个答案,我只是投了赞成票。但是有一点我想知道更多,那就是
在发送页面之前使用PHP来决定页面中的内容
你能给我一个参考吗关于这个的更多解释?再一次,谢谢。我想这就是我想要的,但是我仍然有点困惑如何在javascript代码中安排它,并将其组合到会话函数中。更新了代码示例。你不需要在我们home.html的头中使用php重定向。但是要小心!这只是出于设计目的ses。如果您的内容只有登录用户才能看到,那么您应该使用正确的php代码。如果您使用Javascript,则可以在html源代码中看到内容。我想这就是我要查找的内容,但我仍然有点困惑如何在Javascript代码中安排这些内容,并将其组合到会话函数中。更新了代码检查例如,您不需要在我们home.html的标题中使用php重定向。但请小心!这仅用于设计目的。如果您的内容只有登录用户才能看到,则应使用正确的php代码。如果您使用Javascript,则可以在html源代码中看到内容。