gpt4 book ai didi

php - 从数据库中获取选定的国家进入选择框

转载 作者:行者123 更新时间:2023-11-29 05:42:21 27 4
gpt4 key购买 nike

大家好,感谢您的宝贵时间。

我正在使用以下查询从我的数据库中获取信息:

$sql = "SELECT amember_countries.country, amember_countries.title, gold_profile.username, gold_profile.country AS userCountry 
FROM amember_countries
LEFT JOIN gold_profile
ON amember_countries.country = gold_profile.country

ORDER BY amember_countries.title ASC
";

$rs = mysql_query($sql);

$selected = "";

while($row = mysql_fetch_array($rs))
{
if ($row['userCountry'] == $row['country'] && $row['username'] == $username){
$selected = "selected";
}else{
$selected = "";

}
echo "<option ".$selected." value=\"".$row['country']."\">".$row['title']."\n ";
}

它工作正常,但我面临的问题是如果 3 个人来自荷兰,选择框将显示 3 次荷兰。其他国家也一样。

例如:

user 1 is from The Netherlands
user 3 is from The Netherlands
user 6 is from The Netherlands

点击选择框时显示:

Belgium
Canada
Luxemburg
Netherlands
Netherlands
Netherlands

其他国家也发生了同样的事情。

知道如何解决这个问题吗?

提前致谢!

最佳答案

可能的解决方案:

代码端

你可以这样做:

$a = array();
while($row = mysql_fetch_array($rs))
{
if ($row['userCountry'] == $row['country'] && $row['username'] == $username){
$selected = "selected";
}else{
$selected = "";

}
if(!in_array($row['country'], $a))
{
echo "<option ".$selected." value=\"".$row['country']."\">".$row['title']."\n ";
array_push($a, $row['country']);
}
}

数据库

您还可以定制您的数据库查询以简单地选择国家:

SELECT * FROM FROM amember_countries GROUP BY amember_countries.country

...或者类似的东西。

我个人会建议数据库解决方案,因为那将是“正确”的解决方案(数据库就是用来解决这类问题的)。

关于php - 从数据库中获取选定的国家进入选择框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5784834/

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