php
2012-09-07 58 views 0 likes 
0

我登录的代码是:PHP:PHP登录和logou(父文件夹的设置会话路径)

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 />"; 
       } 

当用户登录时,我希望这是一个注销链接,当他们未登录,注册链接。

我的文件如下:

UI 
    user(folder) 
     userprofile.php 
     login.php 
     logout.php 
    headers.php 
    index.php 
    footer.php 

当我登录时,它总是显示注销,除了上的index.php。但是,在用户文件夹之外,它显示注册。

这里有什么问题?
现在我更新我的问题

+4

为此使用会话,而不是Cookie。 – Flukey

+1

这是一种非常糟糕的方式来处理登录,因为他可能会修改他的计算机上的cookie值,因此不需要任何密码就可以识别自己身份。 – Bgi

+0

FWIW:由于您是PHP新手,您可能会考虑寻找一个可以登录/注销的库。它会让你的生活变得轻松(并且更安全)。祝你好运 – David

回答

0

您可能从/ user文件夹中的脚本定义了cookie(带有setcookie或类似物)。

如果你想在cookie被从其他文件夹avaiblable,你必须设置SetCookie函数的$ path参数:

setcookie()

不过需要注意的使用Cookie是一个非常糟糕的主意来处理用户认证。

相关问题