将user_id从sql中的一个表转换为另一个表

时间:2014-06-18 18:26:40

标签: php mysql

我有一个带有"会话的数据库" table,a" log"表和"用户"表(等)。 " log"中的user_id;和"会话"表格是一个数字。此数字显示在user_id下的users表中(它在创建新用户时生成随机数)。

每次用户登录时,都会向"会话"添加一行。和" log"具有该数字的表作为user_id。我想这样做,以便当用户登录时,他的实际用户名将被写入数据库,而不是数字。不知怎的,我想在"用户"中查找user_id号码。表并将其翻译为" users"中的用户名表并将其写入"会话"和" log"表。

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

2 个答案:

答案 0 :(得分:0)

如果我们能够看到您的架构会更容易,但您要查找的查询类似于以下内容:

按ID获取用户名:

"SELECT username FROM users WHERE user_id='" + id + "';"

该查询应该为您提供用户名,您可以将其分配给本地变量以在insert语句中使用。在insert语句中,将user_id更改为username(假设user_id是int且username是varchar,则需要更改模式。)

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

答案 1 :(得分:-2)

需要更多信息。首先,您的表属性是什么(您需要在日志和会话表中使用用户名列)并且您使用的是OOP吗?

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