PHP:会话不适用于父目录

PHP:会话不适用于父目录,php,Php,我有设置会话的代码,如: if($found>0){ session_start(); $_SESSION['user_name']=$user; session_set_cookie_params(24*60*1,'/','.localhost'); $expire=time()+60*60*24; setcookie("cookiename", $user, $expire); header("location:http://loc

我有设置会话的代码,如:

if($found>0){
    session_start();
    $_SESSION['user_name']=$user;

    session_set_cookie_params(24*60*1,'/','.localhost');

    $expire=time()+60*60*24;
    setcookie("cookiename", $user, $expire);

    header("location:http://localhost/UI/user/userprofile.php");
} else{
    $message =  "Username or  password is not correct.";
    header("Location:index.php?message={$message}");
}
这是我的标题内容,我把登录和注销放在这里

session_start();
if (isset($_COOKIE["cookiename"])){
    $unm = $_SESSION["user_name"];
    echo "User :  " . $_SESSION["user_name"] . "";
    echo " <a href='http://localhost/UI/user/logout.php'>logout</a>";
    echo " <a class='addmeeting' href='http://localhost/UI/user/createmeeting.php' title='Create New Meeting'>Create Meeting</a>";
} else{
    echo "<li><a href='register.php'>Register</a></li>";
    echo " User : Guest!<br />";
}

请告诉我我做错了什么?

我猜是cookie不起作用,而不是会话(会话代码位于首先检查cookie的
if()
块中)

Cookie默认限制为当前文件夹,因此它不会应用于父文件夹

如果要将其应用于整个站点,则需要在cookie中指定一个
/
,如下所示:

setcookie("cookiename", $user, $expire, '/');
这将在整个站点上设置cookie,因此您的代码应该可以工作


然而,我真的不明白你为什么不在这里使用会话;为什么cookie和会话在同一上下文中?你也可以在课程中设置所有内容并完成。(会话无论如何都是基于cookie的)

你刚才问了这个问题。你建议我使用我使用的会话,现在我浏览文档,发现会话设置cookie参数(24*60*1,“/”,“.localhost”);但它仍然不适用于任何人me@user1654711-如果您对以前的答案有疑问,这里的正常程序是使用所需的任何额外信息更新原始问题,而不是询问新的问题。yeah的可能副本现在可以使用了谢谢,我将删除cookie谢谢您的建议
setcookie("cookiename", $user, $expire, '/');