我需要一些帮助来“获取”登录我网站的用户 ID。我基本上有一个用户仪表板,我只想显示特定用户的详细信息。谁能告诉我我走的路是否正确以及我做错了什么。
因此,在用户登录后登陆的仪表板页面中,我在页面顶部有这个:
$query = "SELECT * FROM `checkPointMod` WHERE `idUsers` = $_SESSION['id']";
然后在每个页面上的页眉中我都有这个:
<?php
session_start();
require "includes/dbh.inc.php";
?>
然后在我的登录脚本中我有:
$_SESSION['id'] = $row['idUsers']; //User ID
$_SESSION['uid'] = $row['uidUsers']; //Username
$_SESSION['email'] = $row['emailUsers']; //Users Email
所以我想通过在我的仪表板页面顶部调用 $_SESSION['id']
它只会选择谁登录但是我得到的错误是:
语法错误,意外的“”(T_ENCAPSED_AND_WHITESPACE),需要“-”或标识符(T_STRING)或变量(T_VARIABLE)或数字(T_NUM_STRING)
有人可以告诉我这是否不是获取哪个用户已登录的正确方法,或者它是否只是一个简单的语法案例?
最佳答案
您可以创建一个变量来存储 id 并将其传递到查询中以像这样忽略此错误
$id = $_SESSION['id'];
$query = "SELECT * FROM `checkPointMod` WHERE `idUsers` = $id";
或者你可以这样做
$query = "SELECT * FROM `checkPointMod` WHERE `idUsers` = ".$_SESSION['id'].'"';
关于php - 如何获取已登录站点的用户的 session ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55443172/