gpt4 book ai didi

PHP Mysql While循环覆盖一个变量只显示一个结果

转载 作者:可可西里 更新时间:2023-11-01 07:56:28 25 4
gpt4 key购买 nike

我有一个 PHP 脚本来使用从数据库获得的结果填充下拉菜单 我遇到的问题是下拉菜单中只显示最后一个结果。我认为这是因为每次运行时获取所有结果的 while 循环都会覆盖存储字符串的变量。

我试图找到一个解决方案来修复它,但最终陷入了一个黑暗的角落,没有解决方案

PHP代码:

$sql2 = "SELECT id, course, location FROM courses WHERE course LIKE '%Forex%' OR  course LIKE '%forex%'";
$query2 = mysqli_query($link, $sql2);
$opt = '<select id="Forex" name="Forex">';
$opt1 = '<option value="">Select Forex Workshop</option>';



while($result2 = mysqli_fetch_assoc($query2)){
//I belief the $opt2 variable is overwritten every time the loop runs
$opt2 = '<option value="">'.$result2['course'].'</option>';
print_r($opt2);
}
$opt3 = '</select>';
return $opt.$opt1.$opt2.$opt3;


}

我可能错了,问题可能出在代码的其他地方,但是当我 print_r($result2) 时,所有正确的结果都在那里

最佳答案

只需添加一个

$opt2 .= '<option value="">'.$result2['course'].'</option>';
^

您的变量正在重新初始化,应该连接起来。

所以,最终的代码应该是:

$opt2 = '';
while($result2 = mysqli_fetch_assoc($query2)){
//I belief the $opt2 variable is overwritten every time the loop runs
$opt2 = '<option value="">'.$result2['course'].'</option>';
print_r($opt2);
}
$opt3 = '</select>';
return $opt.$opt1.$opt2.$opt3;

关于PHP Mysql While循环覆盖一个变量只显示一个结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20678203/

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