У меня проблема с моим кодом, как сказано в заголовке, я получил вдвое больший результат. видел много тем об этом, но я не нашел своего конкретного решения. спасибо за помощь !!
<?php
foreach($liste_vol as $index =>$vol)
{
$etape = 1;
$liste_route = get_routeData($vol->idVol);
$nb = count($liste_route) - 1;
echo '<tr>
<td><i class="fas fa-times"></i></a></td>
<td>' . $liste_route[0]->dateDebut . '</td>
<td>' . $liste_route[0]->OACIdep . '-' . $liste_route[$nb]->OACIarr . '</td>
<td>' . $vol->dureeTrajet . '</td>
<td> ' . $vol->immatAvion . '</td>
<td>';
foreach ($liste_route as $index2 => $route) {
echo '<div> ' . $etape . ' ' . $route->OACIdep . '-' . $route->OACIarr . '</div>';
$etape = $etape + 1;
}
echo '
<td> ' . $vol->qualif . '</td>
<td> ' . $vol->remarques . '</td></tr>';
}
?>
Я использую эту функцию для доступа к моей базе данных:
function get_volData($idUser)
{
$dbh = connexion();
$tab = array();
$sql = "SELECT DISTINCT * FROM vol JOIN avions ON vol.idAvion = avions.idAvion
JOIN vuedureetrajet ON vol.idVol = vuedureetrajet.idVol WHERE idUser=:idUser ORDER BY vuedureetrajet.heureDep";
$sth = $dbh->prepare($sql);
$sth->bindParam(":idUser", $idUser, PDO::PARAM_INT);
$sth->execute() or die(print_r($sth->errorInfo(), true));
while( $result = $sth->fetch(PDO::FETCH_OBJ))
{
$tab[] = $result;
}
$sth->closeCursor();
return $tab;
}
другая функция очень похожа и имеет тот же метод выборки
var_dump ($ liste_vol) возвращает:
array(4) {
[0]=> object(stdClass)#3 (9) { ["idVol"]=> string(1) "1" ["idUser"]=> string(1) "1" ["idAvion"]=> string(1) "1" ["qualif"]=> string(22) "vol aux instruments IR" ["remarques"]=> string(28) "Contournement orage sur Agen" ["typeAvion"]=> string(11) "CESSNA C172" ["immatAvion"]=> string(6) "D-EGCD" ["idCompagnie"]=> string(1) "6" ["dureeTrajet"]=> string(8) "03:15:00" }
[1]=> object(stdClass)#4 (9) { ["idVol"]=> string(1) "1" ["idUser"]=> string(1) "1" ["idAvion"]=> string(1) "1" ["qualif"]=> string(22) "vol aux instruments IR" ["remarques"]=> string(28) "Contournement orage sur Agen" ["typeAvion"]=> string(11) "CESSNA C172" ["immatAvion"]=> string(6) "D-EGCD" ["idCompagnie"]=> string(1) "6" ["dureeTrajet"]=> string(8) "03:15:00" }
[2]=> object(stdClass)#5 (9) { ["idVol"]=> string(2) "14" ["idUser"]=> string(1) "1" ["idAvion"]=> string(1) "1" ["qualif"]=> string(4) "test" ["remarques"]=> string(4) "test" ["typeAvion"]=> string(11) "CESSNA C172" ["immatAvion"]=> string(6) "D-EGCD" ["idCompagnie"]=> string(1) "6" ["dureeTrajet"]=> NULL }
[3]=> object(stdClass)#6 (9) { ["idVol"]=> string(2) "14" ["idUser"]=> string(1) "1" ["idAvion"]=> string(1) "1" ["qualif"]=> string(4) "test" ["remarques"]=> string(4) "test" ["typeAvion"]=> string(11) "CESSNA C172" ["immatAvion"]=> string(6) "D-EGCD" ["idCompagnie"]=> string(1) "6" ["dureeTrajet"]=> NULL } }