У меня есть кусок кода, чтобы получить данные из базы данных MySQL.Мне нужно построить контейнеры для всех станций с той же станцией station_group, что я делаю через цикл foreach.Внутри цикла foreach есть цикл while для заполнения контейнеров группы станций всеми станциями, у которых есть родительская станция station_group.Код работает нормально, если в коде есть отладка эхо-строк (так что какая-то задержка), но после их закомментирования код доставляет неправильный порядок контейнеров и станций.Я догадываюсь об этом из-за асинхронной функции fetch_assoc, поэтому я могу добавить функцию обратного вызова, но я просто не получаю ее запуска.Поэтому я бы оценил любую помощь ... =)
BR
<?php
//build unique Station group array
$sql_unique = "SELECT DISTINCT station_group FROM station ORDER BY station_group ASC";
$unique_station_groups = mysqli_query($dbConn, $sql_unique);
//get all station data
$sql = "SELECT * FROM station ORDER BY station_group, station_id ASC";
$result= mysqli_query($dbConn, $sql);
//Loop for station_group
foreach ($unique_station_groups as $station_group_value){
echo '<div class="css-station-group>';
while ($row = mysqli_fetch_assoc($result)) {
//echo "<script>console.log(".json_encode($station_group_value).")</script>";
//echo "<script>console.log(".json_encode($row).")</script>";
$station_id = $row['station_id'];
$station_name = $row['station_name'];
$station_layout = $row['station_layout'];
$station_group = $row['station_group'];
if ($station_group_value['station_group']==$station_group) {
echo '<div class="station-container css_station-layout-'.$station_layout.
'" id='.$station_id.
'>'.$station_name.
'<br></div>';
}
}
echo '</div>';
mysqli_data_seek($result,0); //reset array, so next Loop will find values again
}
?>