【发布时间】:2015-10-15 11:04:31
【问题描述】:
我正在创建个人资料页面,我将使用此简单代码区分用户是访问自己的个人资料还是其他用户
if(isset($_GET['username']) && !empty($_GET['username'])) {
$username = $_GET['username'];
}
else {
$username = $_SESSION['username'];
}
现在的问题是我正在使用会话和 cookie 来实现自动登录功能。在header.php 和accountsettings.php 我定义用户名是这样的:
if(isset($_SESSION['username'])) {
$username = $_SESSION['username'];
}
else if(isset($_COOKIE['username'])){
$username = $_COOKIE['username'];
}
else
{
//invalid ---
}
此代码适用于两个页面,因此如何在个人资料页面上设置用户名,它会检查$_GET['username'],或者$_SESSION['username'] 或$_COOKIE['username']
【问题讨论】:
-
可能是这样的
<span class="username"><?= $username; ?></span>? -
只需将这部分粘贴到那里
if(isset($_SESSION['username'])) { $username = $_SESSION['username']; } else if(isset($_COOKIE['username'])){ $username = $_COOKIE['username']; } else { //invalid --- }取自您的 sn-p -
@noobie-php 那么
$_GET['username']呢? -
不需要使用
isset()AND!empty()你可以使用empty() 因为它会检查值/变量是否存在以及它是否包含值。 -
@Harman:如果它已经在会话中,它应该可以工作。如果它不使用
if(isset($_GET['username']) && !empty($_GET['username'])) { $username = $_GET['username']; } else { $username = $_SESSION['username']; }
标签: php session cookies profile