2013-03-21 55 views
0

只在一个页面上登录时,这是代码,我此刻却是行不通的,显示注销按钮注销链接,然后自动退出登录用户?使用PHP来显示登录并根据活动会话

<?php 
if(!session_is_registered(myusername)) 

{ 
echo '<a href="login.php"><b>Log In</b></a>'; 
} 

else 
{ 
echo '<a href="log_out.php"><b>Log Out</b></a>'; 
} 


?> 
+2

['session_is_registered()'](HTTP ://php.net/manual/en/function.session-is-registered.php)已被弃用,你忘了周围的'myusername'报价,你似乎并没有启动会话。 – Tchoupi 2013-03-21 22:26:58

+0

是'myusername'恒定的,还是你只是忘记报价/'$'? – 2013-03-21 22:27:47

回答

3

你忘了做session_start()了很多东西,并请务必共享,在您的网页,在那里你要启用会话保护中的每一个。

<?php 
session_start(); 
if(!isset($_SESSION['username']) && empty($_SESSION['username'])) 

{ 
echo '<a href="login.php"><b>Log In</b></a>'; 
} 

else 
{ 
echo '<a href="log_out.php"><b>Log Out</b></a>'; 
} 


?> 
+0

有一个错字错误,我更新了它 – samayo 2013-03-21 22:33:14

1

session_is_registered已弃用。尝试使用$_SESSION代替

if ($_SESSION["isLoggedIn"]) { 
    // Log out HTML goes here 
} else { 
    // Log in HTML goes here 
} 

你需要包括session_start()在所有文件的顶部,你可以设置$_SESSION["isLoggedIn"]就像任何其他变量:$_SESSION["isLoggedIn"] = TRUE