我需要在此(profile.php)文件中放入什么代码,以便我可以回显已登录用户的信息。在此之后我有一个HTML代码,我想显示信息。我已经可以回显用户名,因为它已保存在login.php会话中。有没有在login.php中添加任何其他代码来回显其他信息的选项?
// This is the profile.php file
<?php
session_start();
if(!isset($_SESSION['username']) || empty($_SESSION['username'])){
header("location: login.php");
exit;
}
?>
//DB = users with id, username, firstname, lastname etc...
答案 0 :(得分:0)
理想情况下,这样做的过程是,不是在会话中保存用户名,而是存储每个帐户的唯一ID,并根据ID获取信息。
这样,您只需存储ID,即可轻松获取所有信息。
但是,使用当前的设置,您将运行一个简单的查询,根据会话中保存的用户名从db表中选择用户信息。
我会提供一些代码,但是你没有提供任何数据库信息,所以我无法猜测你的表名,所以我无法真正模拟出一个查询。
更新#1
我将假设您是一名熟练的开发人员正在使用prepared statements(提示:如果您不是则使用它们):
SELECT * FROM `users` WHERE `username` = ?
然后你绑定并获取数据并输出它。显然,您不需要使用*
,也可以提供自己的列。
注意:确保您的用户名是唯一的,否则添加LIMIT 1
,但即便如此,您可能会收到错误的记录,因此我建议用户使用上面的ID。