gpt4 book ai didi

PHP 从表中获取变量,然后使用该变量从第二个表中进行选择

转载 作者:行者123 更新时间:2023-11-29 23:10:00 25 4
gpt4 key购买 nike

我正在为用户构建关注者列表。我有两个表,第一个表显示用户之间的关系,第二个表保存每个用户的个人资料信息。在下面的代码中,我首先从用户关系表中选择获取一个变量 {$userid1},它是关注当前用户的所有用户 id 的值。当我回显 {$userid1} 时,我得到了关注当前用户的所有用户的 id,但它是一个巨大的连接字符串。我想获取变量 {$userid1} 并使用它从个人资料表中提取这些关注者的每一位用户数据。 我希望每个用户的数据都从关注当前用户的个人资料表中显示。该代码可以工作,但仅从个人资料表中提取最新关注者的个人资料数据。我正在考虑将变量 {$userid1} 放入数组并使用 foreach,但我不确定语法如何。有人知道它如何运作吗?问题是变量一次只能保存一个值。

第一个查询的输出是当前用户关注的用户的 iduser 编号。

例如当回显 echo $userid1 时。 ""; 结果是 id 如下所示:45 56 67我在 echo 语句中的数字之间添加了一个空格。

$sql = mysql_query("SELECT * FROM followrelations Where iduser2='$uid' "); //followers from relations table
while($row = mysql_fetch_array($sql)){
$userid1 = $row['iduser1'];
echo $userid1 . " ";


}
$sql = mysql_query("SELECT * FROM profile where iduser=$userid1 ORDER BY username ");//get followers infor from profile using variable
while($row = mysql_fetch_array($sql)){
$iduserf = $row['iduser']; //userid2 requires different var name so program does not get mixed up
$username = $row['username'];
$bio = $row['bio'];
$avatar = $row['avatar'];

echo "
<div style='width:500px;height:100px;padding:20px 20px;float:left;border: solid black 1px;'>
<a href='profile.php?uid=$iduserf'><img src=$avatar height=50px width=50px /></a></br>
<a href='profile.php?uid=$iduserf'>$username </a></br>
</div>" ;

}

最佳答案

您可能正在寻找子查询:

SELECT username 
FROM user_table
WHERE id IN( SELECT user_id WHERE linked_user_id = 123 )

这是一个简单的例子,是一个更好的例子。这将从 user_table 中选择所有用户的用户名,其中 ID 存在于子查询中。
反过来,子查询会选择链接用户具有 id=123 的所有 user_id
子查询与在 PHP 中创建数组非常相似,并使用该信息进行下一个查询。

小提示:小心使用子查询。它们在我上面的示例中是完美的,但例如并非所有服务器都支持子查询中的限制。这可能会影响性能。更复杂的函数在子查询中不起作用。尽量保持简单。

关于PHP 从表中获取变量,然后使用该变量从第二个表中进行选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28130099/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com