我认为您在 PHP 的工作方式中缺少一个相当重要的部分。
每个单独的用户使用您的应用程序的不同实例。例如,如果我进入并登录到应用程序,而您也这样做,我们将(例如)设置变量 $_SESSION,但我将拥有$_SESSION['idUser'] = 3
,而您将拥有$_SESSION['idUser'] = 5
. 他们不会知道彼此的存在。
因此,基本上,您需要为单个用户考虑您的应用程序,并具有适当的限制。这意味着,例如,如果您想创建编辑配置文件页面,您将$idUser = $_SESSION['idUser']
在 SQL 查询中使用来选择/更新/插入适当的信息。
这是一个示例查询:
// view users profile page
$idUser = intval($_SESSION['idUser']);
$query = "SELECT * FROM `users` WHERE id = {$idUser}";
// edit profile checks/database update
$idUser = intval($_SESSION['idUser']);
$userData = $_POST['user']; // let's say all your inputs have a name="user[...]"
// !!! validation for the user data !!!
$query = "UPDATE `users` SET col1='{$userData[col1]}', col2='{$userData[col2]}' WHERE id = {$idUser}";
希望这会有所帮助,如果您需要进一步的说明,请告诉我。
PS:不要忘记在 SQL 查询中使用数据之前正确转义数据,并使用 mysqli 或 PDO 扩展(不要使用 mysql,因为它已被弃用,并将在未来的 PHP 版本中删除)。