我有一个包含用户数据库的网页,每个用户都有一个唯一的用户ID。现在我创建了一个启动会话的登录页面,会话中包含用户ID。
我还有一个“更新状态”选项,用户键入状态,并将状态和用户唯一ID提交到新表中。因此,该表将具有用户ID和用户输入的状态。
现在我想在页面上显示用户状态,并且我想要显示用户的用户名。所以基本上代码必须从状态表中获取用户ID,然后将其与Users表中的用户ID相匹配,并且必须从users表中为匹配ID提供用户名。
* 最终工作代码 *
//连接到mysql 的mysql_connect( “本地主机”, “根”, “”);
//连接数据库 mysql_select_db( “用户”);
//查询数据库 $ query =“select * \ n” 。 “来自状态内部联接用户\ n” 。 “on status.user_id = users.id \ n ORDER BY users.id DESC”;
//获取结果/将结果转换为数组
$result = mysql_query($query);
while ($row = mysql_fetch_array($result)) {
$s_firstname = $row['firstname'];
$s_lastname = $row['lastname'];
$s_status = $row['status']
}
答案 0 :(得分:2)
我建议花一些时间了解sql中的连接。您只需要一个SQL查询,它就像这样......
select *
from status inner join users
on status.userid = users.userid
where active = '1' and connect = '1'
编辑:虽然不建议使用mysql函数(请参阅本页顶部的注释 - http://uk3.php.net/mysql_query),但您的行应该是这样的..
$query = "select * from status inner join users on status.user_id = users.id where active = '1' and connect = '1'";
$result = mysql_query($query);
WHILE ($row = mysql_fetch_array($result)){
... rest of your code....