Удалить дубликаты в выпадающем списке php - PullRequest
0 голосов
/ 07 июля 2019

У меня есть раскрывающийся список php, который извлекает местоположения из базы данных, он получает все данные правильно, но иногда, если две записи имеют одинаковое значение в базе данных, он добавляет элемент дважды в раскрывающемся списке. Это раскрывающийся список местоположений, и некоторые местоположения являются дубликатами, я хотел бы знать, какой код я могу добавить, чтобы удалить дублирующиеся записи и просто сохранить один.

Вот мой код:

               <label for="select-service">
                <strong>Enter a Location:</strong>
            </label>
            <select class="form-control" id="select-location" class="col-xs-12 col-sm-4 form-control" required>
                <option value="">Select Location</option>



                 <?php
            foreach($appointment_locations as $location) {

             $LocationsArray = explode(",", $location->notes);

              foreach($LocationsArray as $singleLocation):
                 ?>

                <option value="<?=$singleLocation ?>"><?=$singleLocation  ?></option>                  

                <? endforeach;

                 };?>

            </select>

EDIT:

Вот вывод enter image description here

Я пытался использовать foreach(array_unique($appointment_locations) as $location) {, но он не показывает моего второго провайдера, когда я нажимаю на местоположение Rosebank

Ответы [ 2 ]

0 голосов
/ 07 июля 2019

1) проверить введенные данные, чтобы избежать таких ситуаций

2) почему вы не group by извлекли свои данные из базы данных?


, если у вас нет доступачтобы сделать это, вы можете попробовать простое решение, а не array_unique решение

$tmp = [];
foreach ($repeatedLocations as $location) {
    if (isset($tmp[$location]) == false) {
        // do your stuff
        $tmp[$location] = true;
    }
}
unset($tmp);
0 голосов
/ 07 июля 2019

попробуй

foreach(array_unique($appointment_locations) as $location) {
//... code

или

$LocationsArray = array_unique(explode(",", $location->notes));

https://www.php.net/manual/en/function.array-unique.php

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...