我有一个链接,使用jQuery,显示一个更新用户简历的框。但是,我希望该链接仅在用户登录时显示,并且仅在该用户的页面上显示。因此,例如,如果我登录,它会显示在我的页面上,但是如果我转到朋友页面,它不会显示,因此我不必选择更改他们的简历。这是我的代码:
<div class="changeBio">
<?php
if ($_SESSION['loggedin'] == true) {
?><a href="" id="showBio">Change bio</a><?php
}
?>
</div>
此代码将在用户登录时检查它,但是我应该在 if 语句中输入什么来检查它是否正确用户?提前感谢!
编辑:
当每个用户登录时,他们都有一个来自存储其信息的数据库的唯一 ID。每个朋友页面都是根据这些ID显示的,所以我只希望链接显示在登录者的页面上,而不是他们的朋友页面上。我试过了 如果($_SESSION['loggedin'] && $id != $_GET['id'](和 if ($_SESSION['loggedin'] && $id == $_SESSION['id'](但是他们都不起作用..在您正在查看的朋友页面的 url 中,如果有帮助,它将该用户的 id 显示为 GET 变量。
你将不得不包括WHO已登录,而不仅仅是他们是否登录。 您还需要该信息来确定要显示的简历。
您的数据是这样的:
<div class="changeBio">
<?php
$id = $_POST['id'];
if ($_SESSION['loggedin'] == true && $_POST['id'] == $_SESSION['loggedin_userid']) {
?><a href="biopage.php?userid='<?php echo $_SESSION['loggedin_userid']; ?>'" id="showBio">Change bio</a><?php
}
?>
</div>
您需要在
会话数据中存储当前登录用户的 ID、用户名或某些识别功能。
然后,您可以验证特定用户是否使用类似于
if ($_SESSION['currentUserID'] == $idOfTheUserThatTheBioBelongsTo)
// let the user change the bio
您可以将
另一个变量 $current_user 与上面提到的$id一起存储在会话中(我想它会因用户而异(,然后在您需要显示当前用户消息的页面上您可以使用
if($id == $current_user){
//whatever you want to do
}