X-Git-Url: https://git.piment-noir.org/?p=Project_webapp.git;a=blobdiff_plain;f=includes%2Fformsearch.php;h=cd12ee4a5b988b8aff76f592022ed64c1f77cd3e;hp=ba1572a904bc4273ada71b5f8a49de9f1cc50fa1;hb=68cee0ac3fe728566e16dc0460416c77022f4b22;hpb=77c2d82c70ae6b1629d372b3c4642cdc2a994698 diff --git a/includes/formsearch.php b/includes/formsearch.php index ba1572a..cd12ee4 100644 --- a/includes/formsearch.php +++ b/includes/formsearch.php @@ -50,7 +50,7 @@ if (empty($form_arrival_date)) { prepare_query($sql_pquery); $connection->run_prepared_query(); @@ -99,21 +99,27 @@ if (empty($form_arrival_date)) { = ? and VilleD = ? and DateA <= ? and VilleA = ? + $sql_pquery = "select VOLS.NumVol as NumVol, VilleD, DateD, VilleA, DateA, DEFCLASSES.Classe, round(CoutVol*CoeffPrix, 2) as Prix, CapAv + from VOLS join DEFCLASSES on DEFCLASSES.NumVol = VOLS.NumVol + join AVIONS on AVIONS.NumAv = VOLS.NumAv + where DateD >= ? and VilleD = ? and DateA <= ? and VilleA = ? order by DateD, NumVol, Prix"; $connection->prepare_query($sql_pquery); $connection->prepared_query_bind_param("ssss", array($form_departure_date, $form_departure_city, $form_arrival_date, $form_arrival_city)); $connection->run_prepared_query(); $connection->get_pquery_result(); - $rows = $connection->get_result_array(); + $fligths = $connection->get_result_array(); $connection->close_prepared_query(); - //FIXME: Use NumAv to see if a flight is fully booked. - //var_dump($rows); - if (empty($rows)) { + //var_dump($fligths); + if (empty($fligths)) { echo "Aucun vol ne correspond aux critères de recherche.
"; } else { + if ($action === "return_flight" && isset($_SESSION['return_flight_nb_place'])) { + $nb_places = $_SESSION['return_flight_nb_place']; + unset($_SESSION['return_flight_nb_place']); + } else { + $nb_places = 1; + } echo "\n"; echo " \n"; echo " \n"; @@ -125,28 +131,47 @@ if (!$input_failure) { echo " \n"; echo " \n"; echo " \n"; - foreach ($rows as $row) { + foreach ($fligths as $fligth) { + $sql_pquery = "select sum(NbPlaces) from RESERVATIONS where NumVol = ?"; + $connection->prepare_query($sql_pquery); + $connection->prepared_query_bind_param("s", array($fligth['NumVol'])); + $connection->run_prepared_query(); + $connection->get_pquery_result(); + $rows = $connection->get_result_array(); + $connection->close_prepared_query(); + $booked_places = $rows[0][0]; + if (is_null($booked_places)) { + $booked_places = 0; + } + if (isset($fligth['CapAv']) && isset($booked_places)) { + $free_places = $fligth['CapAv'] - $booked_places; + } else { + $free_places = "Inconnu"; + } echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; echo " \n"; echo " \n";
Numéro de volPrix d'une placeRéserver
" . $row['NumVol'] . "" . $row['VilleD'] . "" . $row['DateD'] . "" . $row['VilleA'] . "" . $row['DateA'] . "" . $row['Classe'] . "" . $row['Prix'] . "€" . $fligth['NumVol'] . "" . $fligth['VilleD'] . "" . $fligth['DateD'] . "" . $fligth['VilleA'] . "" . $fligth['DateA'] . "" . $fligth['Classe'] . "" . $fligth['Prix'] . "€ + Places libres : " . $free_places . "
- - - + + + - - \n"; - if (!($action === "return_flight")) { + \n"; + if ($action !== "return_flight") { + echo " \n"; echo " \n"; } - echo " \n"; + if ($free_places !== 0 || $free_places === "Inconnu") { + echo " \n"; + } echo "