PHP登录/注销问题

PHP登录/注销问题,php,Php,我一直在学习一些PHP以进入Wordpress开发,我试图构建一个登录/注销系统,但存在一些问题 所以我得到了index.php <?php ini_set("session.save_path", "/home/system/sessionData"); session_start(); include('functions.php') ?> <?php if (

我一直在学习一些PHP以进入Wordpress开发,我试图构建一个登录/注销系统,但存在一些问题

所以我得到了index.php

    <?php
ini_set("session.save_path", "/home/system/sessionData");
    session_start();
   
        
include('functions.php')  
 ?> 


         <?php  if (isset($_SESSION['logged-in']) && $_SESSION['logged-in']) : ?>
   <p>   please login</p>
       
      
            <form method="post" action="login.php">
                        Username <input type="text" name="username">
                        Password <input type="password" name="password">
                <input type="submit" value="Logon">
                </form>
               
                <?php endif; ?>
            
        </div>


       
        <?php if(isset($_SESSION['logged-in']) && $_SESSION['logged-in'] == true) : ?>
           just logged in content
           <a href="logout.php" class="logout-link">Logout</a> 
           <?php endif; ?>
          
       

如果我在index.php的顶部添加以下“$_SESSION['logged-in']=”;”,我可以看到内容,但会话显然没有保存,我相信整个问题与此有关?我已经在我的login.php中定义了这个会话。我应该在index.php中再次定义它吗?

您对条件语句有问题 在index.php中

显示登录表单的第一个条件是

<?php  if (isset($_SESSION['logged-in']) && $_SESSION['logged-in']) : ?>

这意味着如果未设置
$\u会话['logged-in']
将显示登录表单。

尝试通过在代码中启用错误进行调试,添加错误报告(E\u ALL);ini_集('display_errors','1');在玩了一点代码之后,我注意到的一件事是,如果我把这个$_会话['logged-in']='';在my index.php的顶部,我可以看到内容,但它没有保存会话,因为即使登录后,我仍然可以看到登录表单。保存路径(/home/system/sessionData)是否存在并可写,或者您可以尝试禁用session.save_path是的,它们存在并且可写,我刚刚重新检查过。使用var_dump(session_status())检查您的会话状态,放在会话_start()之后,并放在页面底部。
<?php  if (isset($_SESSION['logged-in']) && $_SESSION['logged-in']) : ?>
<?php  if (!isset($_SESSION['logged-in'])) : ?>