gpt4 book ai didi

php - PHP 中另一个查询的 while 循环中的 MySQL 查询

转载 作者:行者123 更新时间:2023-11-29 04:30:28 25 4
gpt4 key购买 nike

我有以下代码:

$query = mysql_query("SELECT * FROM activity ORDER BY activity_time DESC LIMIT 50");
while($result = mysql_fetch_array($query)) {
extract($result);
if ($activity_type == "discussion") {

$query = mysql_query("SELECT * FROM discussions WHERE discussion_uuid = '$activity_ref'");
while($result = mysql_fetch_array($query)) {
extract($result);
echo $discussion_user . " said:<br>" . $discussion_text . "<br>";
}

} elseif ($activity_type == "file") {

}
}

但它只返回最后一行。我的目标是有一个按时间顺序排列的“事件”列表,每个事件根据其类型略有不同。

最佳答案

您使用了 $query 和 $result 两次,所以第二个循环覆盖了第一个循环的结果并停止...

$query = mysql_query("SELECT * FROM activity ORDER BY activity_time DESC LIMIT 50");

$query = mysql_query("SELECT * FROM discussions WHERE discussion_uuid = '$activity_ref'");

与 $results 变量相同...

我建议您更改为 $query 和 $query2,但最好使用类似的东西

$activies = mysql_query("SELECT * FROM activity ORDER BY activity_time DESC LIMIT 50");
while($activity = mysql_fetch_array($activies)) {

$discussions = mysql_query("SELECT * FROM discussions WHERE discussion_uuid = '$activity_ref'");
while($discussion = mysql_fetch_array($discussions)) {

我也会避免使用 extract - 因为您可能会覆盖您不希望...

关于php - PHP 中另一个查询的 while 循环中的 MySQL 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3221541/

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