Php 将用户id从sql中的一个表转换为另一个表

Php 将用户id从sql中的一个表转换为另一个表,php,mysql,Php,Mysql,我有一个数据库,其中包括一个会话表、一个日志表和一个用户表。日志和会话表中的用户id是一个数字。该数字显示在user_idit下的users表中,它在创建新用户时生成一个随机数 每次用户登录时,会话表和日志表中都会添加一行,并将该编号作为用户id。我希望这样,当用户登录时,其实际用户名会写入数据库,而不是该编号。不知何故,我希望它在users表中查找该用户id号,并将其转换为users表中的用户名,然后将其写入sessions表和log表 也许可以在我的session_util.php文件中添加

我有一个数据库,其中包括一个会话表、一个日志表和一个用户表。日志和会话表中的用户id是一个数字。该数字显示在user_idit下的users表中,它在创建新用户时生成一个随机数

每次用户登录时,会话表和日志表中都会添加一行,并将该编号作为用户id。我希望这样,当用户登录时,其实际用户名会写入数据库,而不是该编号。不知何故,我希望它在users表中查找该用户id号,并将其转换为users表中的用户名,然后将其写入sessions表和log表

也许可以在我的session_util.php文件中添加一些代码来实现这一点?
我真的希望这一切对某人有意义。

需要更多信息。首先,您需要在日志表和会话表中都有一个用户名列才能开始使用的表属性是什么?您正在使用OOP吗


为什么要使用用户名而不是id?为什么不在输出数据时将id转换为名称,并将id号保留在表中?

如果我们可以看到您的架构,会更容易,但您要查找的查询如下所示:

要按id获取用户名,请执行以下操作:

"SELECT username FROM users WHERE user_id='" + id + "';"
该查询应获取用户名,您可以将其分配给一个局部变量,以便在insert语句中使用。在insert语句中,将user_id更改为username。假设user_id为int,username为varchar,则需要更改模式


不过,我建议您继续使用user_id作为标识符,因为它是一个id,所以应该保证它是唯一的标识符。然后,您可以使用上面的sql语句将此id转换为用户名,并在需要时使用它。

是否要将用户名添加到会话和日志表中?这实际上会对数据进行反规范化,根据您对该数据的调用模式,这可能是正常的。目前的问题是,不清楚您为什么要这样做,以便能够征求意见,确定加入用户表或将用户名写入会话/日志是最佳方法。如果您需要更多信息来回答,为什么要回答?我是说。。。也许一个评论会更好。公平但迂腐的观点。我打算帮这家伙。如果你把精力放在手头的问题上也许是最好的?