У меня есть поле для выбора нескольких стран. Я хочу выбрать любые страны, которые связаны, то есть массив, который я получаю из базы данных.
Вот код, который у меня есть:
<?php
foreach($countries as $country){
if(!empty($offer_countries)){
foreach($offer_countries as $key => $offer_country){
if(isset($offer_country['country_id']) && ($offer_country['country_id'] == $country['id'])){
echo '<option value="'.$country['id'].'" selected>'.$country['name'].'</option>';
}else{
echo '<option value="'.$country['id'].'">'.$country['name'].'</option>';
}
}
}else{
echo '<option value="'.$country['id'].'">'.$country['name'].'</option>';
}
}
?>
Массив $ offer_countries выглядит следующим образом:
Array
(
[0] => Array
(
[country_id] => 1
)
[1] => Array
(
[country_id] => 2
)
[2] => Array
(
[country_id] => 3
)
)
Я зацикливаю все страны, чтобы отобразить их, затем у меня есть вложенный foreach, чтобы увидеть, установлена ли страна, если это так, установите флажок.
Проблема в том, что, скажем, у меня выбрано 3 элемента, он будет отображать 3 из одной и той же страны в зависимости от количества элементов в массиве. Так что, если Соединенные Штаты будут проверены, они будут показаны три раза, с последним проверенным.
Ладно, извините за неясное объяснение, оно, вероятно, довольно понятно, но любая помощь будет потрясающей!