X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=includes%2Fformsearch.php;h=dc682dafb80803829b58db91d0d27805ab9853e2;hb=e14003dc40dec3eb928a58cdff78fddd31990907;hp=66c57c94b8412c8c0bbe6d654acaff78b6a5ad8b;hpb=22f1dc6402dbc9a9c5d2ed2f17ef54044d35ec2a;p=Project_webapp.git diff --git a/includes/formsearch.php b/includes/formsearch.php index 66c57c9..dc682da 100644 --- a/includes/formsearch.php +++ b/includes/formsearch.php @@ -40,17 +40,17 @@ if (empty($form_arrival_date)) { ?> -

Rechercher un vol

+

Rechercher un vol


= ? 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(); - $connection->close_prepared_query(); - //FIXME: Use NumAv to see if a flight is fully booked. - //var_dump($rows); - if (empty($rows)) { - echo "Aucun vol ne correspond aux critères de recherche.
"; - } else { - echo "\n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - foreach ($rows as $row) { - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; + echo " \n"; + } + echo "
Numéro de volVille de départDate de départVille d'arrivéeDate d'arrivéeClassePrix d'une placeRéserver
" . $row['NumVol'] . "" . $row['VilleD'] . "" . $row['DateD'] . "" . $row['VilleA'] . "" . $row['DateA'] . "" . $row['Classe'] . "" . $row['Prix'] . "€ + global $connection; + $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(); + $flights = $connection->get_result_array(); + $connection->close_prepared_query(); + //var_dump($flights); + if (empty($flights)) { + 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"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + foreach ($flights as $flight) { + $sql_pquery = "select sum(NbPlaces) as BookedPlaces from RESERVATIONS where NumVol = ?"; + $connection->prepare_query($sql_pquery); + $connection->prepared_query_bind_param("s", array($flight['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($flight['CapAv']) && isset($booked_places)) { + $free_places = $flight['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 "
Numéro de volVille de départDate de départVille d'arrivéeDate d'arrivéeClassePrix d'une placeRéserver
" . $flight['NumVol'] . "" . $flight['VilleD'] . "" . $flight['DateD'] . "" . $flight['VilleA'] . "" . $flight['DateA'] . "" . $flight['Classe'] . "" . $flight['Prix'] . "€ + Nombre de places libres : " . $free_places . "
- - - + + + - - \n"; - if (!($action === "return_flight")) { - echo " \n"; - } - echo " \n"; - echo "
-
\n"; - } -} + \n"; + if ($action !== "return_flight") { + echo " \n"; + echo " \n"; + } + if ($free_places !== 0 || $free_places === "Inconnu") { + echo " \n"; + } + echo " +
\n"; + } + } ?>