private function updatePlace($idt, $nbplace) { $infos_trajet = Trajet::getInformationTrajet($idt)[0]; $database = UsineBDD::getUsine()->connection(); $nbplace_reste = $infos_trajet['nb_place'] - $nbplace; $sql_update_trajet = "UPDATE trajet SET nb_place = :nbr WHERE id=:id"; $requete_update = $database->prepare($sql_update_trajet); $requete_update->execute(array(':id' => $infos_trajet['id'], ':nbr' => $nbplace_reste)); }
public static function envoyerMessageA($id_trajet) { $database = UsineBDD::getUsine()->connection(); $passagers = Reservation::getUtilisateurReservation($id_trajet); $info = Trajet::getInformationTrajet($id_trajet)[0]; $date = date('d-n-Y H:i', $info['timestamp_trajet']); $message = "Le trajet " . $info['ville_depart'] . '-' . $info['ville_arrive'] . 'du ' . $date . 'a été annulé ! Vous avez recu 10€ en dédomagement'; foreach ($passagers as $array => $passager) { $sql_message = "INSERT INTO messagerie VALUES('',:ide,:idd,:c,:t,'')"; $requete = $database->prepare($sql_message); $requete->execute(array(':ide' => Utilisateur::getUtilisateurId(), ':idd' => $passager['id_membre'], ':c' => $message, ':t' => time())); } }
public function annulationTrajet($id_trajet) { $database = UsineBDD::getUsine()->connection(); if (Trajet::trajetExiste($id_trajet)) { $info_trajet = self::getInformationTrajet($id_trajet)[0]; $prix_g = 0; if (Utilisateur::getUtilisateurId() == $info_trajet['id_conducteur'] && $info_trajet['validation'] == 0) { $passagers = Reservation::getUtilisateurReservation($id_trajet); $prix_g += 10; foreach ($passagers as $array => $passager) { Utilisateur::retirerSolde(10, $info_trajet['id_conducteur']); Utilisateur::ajouterSolde(10, $passager['id_membre']); } Messagerie::envoyerMessageA($info_trajet['id']); $sql_update_trajet = "DELETE FROM trajet WHERE id=:idt"; $requete_update = $database->prepare($sql_update_trajet); $requete_update->execute(array(':idt' => $id_trajet)); Utilisateur::ajoutTrajetA(); $this->confirmation = "Le trajet a bien été annulé! " . $prix_g . "€ ont été retiré de votre compte"; } } }
<?php if (isset($_GET['annulation_trajet']) && !empty(trim($_GET['annulation_trajet']))) { $t = new Trajet(); $t->annulationTrajet($_GET['id_trajet']); if (!empty(trim($t->confirmation))) { echo '<div class="confirmation"><p>' . $t->confirmation . '</p></div>'; } } $html = ''; if (isset($_GET['id_trajet']) && !empty(trim($_GET['id_trajet'])) && Trajet::trajetExiste($_GET['id_trajet'])) { if (isset($_GET['validation_trajet']) && !empty(trim($_GET['validation_trajet']))) { $t = new Trajet(); $t->validationTrajet($_GET['id_trajet']); if (!empty(trim($t->confirmation))) { echo '<div class="confirmation"><p>' . $t->confirmation . '</p></div>'; } } $n = new Note(); if (isset($n)) { if ($n->_erreurs) { foreach ($n->_erreurs as $error) { echo '<div class="erreur"><p>' . $error . '</p></div>'; } } } $info_trajet = Trajet::getInformationTrajet($_GET['id_trajet'])[0]; $reservations = Reservation::getUtilisateurReservation($info_trajet['id']); if (count($reservations) != 0 && count($info_trajet) != 0) { $html .= '<div class="liste_reservation"> <table class="pure-table pure-table-bordered"><thead> <tr> <th> Reservation </th> <th> Nombre de place prise</th> <th> Note </th></tr> </thead>'; foreach ($reservations as $array => $reservation) {
public static function isNoteExisteU($id_trajet, $utilisateur) { $database = UsineBDD::getUsine()->connection(); $info_t = Trajet::getInformationTrajet($id_trajet)[0]; $sql = "SELECT id FROM note WHERE id_trajet=:idt AND id_membre=:idm AND id_membre_note=:idn"; $requete = $database->prepare($sql); $requete->execute(array(':idt' => $info_t['id'], ':idm' => Utilisateur::getUtilisateurId(), ':idn' => $utilisateur)); $res = $requete->fetchAll(); if (count($res) != 0) { return true; } else { return false; } }
<?php $reservation = new Reservation(); $infos_trajet = Trajet::getInformationTrajet($_GET['id_trajet_r'])[0]; $tmp = $infos_trajet['timestamp_trajet']; $jour = date('d', $tmp); $mois = moisFrancais(date('n', $tmp)); $annee = date('Y', $tmp); $heure = date('H : i', $tmp); $date_depart = $jour . ' ' . $mois . ' ' . $annee . ' ' . $heure; if ($infos_trajet['nb_place'] == 0) { $reservation = "Complet"; } else { $reservation = '<select name="nb_place_reserver">'; for ($i = 1; $i <= $infos_trajet['nb_place']; $i++) { $reservation .= '<option value="' . $i . '">' . $i . ' place(s)</option>'; } $reservation .= '</select>'; } $html = '<div class="reservation">'; $html .= '<form method="POST" action="/Controller/ReservationController.php"> <table class="pure-table pure-table-bordered">'; $html .= '<thead><tr > <th colspan="2"> Trajet : ' . ucfirst($infos_trajet['ville_depart']) . '-' . ucfirst($infos_trajet['ville_arrive']) . '</th></tr></thead>'; $html .= '<tbody><tr> <td>Conducteur : </td><td><a title="Voir Profil" href="/Controller/ProfilController.php?context=profil&id_membre=' . $infos_trajet['id_conducteur'] . '">' . Utilisateur::getUsername($infos_trajet['id_conducteur']) . '</a></td></tr>'; $html .= '<tr> <td> Date : </td><td>' . $date_depart . '</td></tr>'; $html .= '<tr> <td> Places restante : </td><td>' . $infos_trajet['nb_place'] . '</td></tr>'; $html .= '<tr> <td> Prix Place : </td><td> ' . $infos_trajet['prix'] . '€</td></tr>'; $html .= '<tr><td> Réserver : </td> <td>' . $reservation . '</td></tr>'; $html .= '</tbody></table> <button type="submit" class="button-success pure-button"><i class="fa fa-car"></i> Réserver vos places </button><input type="hidden" name="id_trajet" value="' . $infos_trajet['id'] . '"></form></div>'; echo $html;
<?php require '../Controller/LoginController.php'; if (isset($_GET['id_trajet_r']) && !empty(trim($_GET['id_trajet_r'])) && Trajet::trajetExiste($_GET['id_trajet_r'])) { render('trajet.php'); } elseif (isset($_POST['depart']) && $_POST['depart'] != -1 && !empty(trim($_POST['arrive']))) { render('reservation_trajet_liste.php'); } elseif (isset($_POST['id_trajet'], $_POST['nb_place_reserver']) && !empty(trim($_POST['id_trajet'])) && !empty(trim($_POST['nb_place_reserver']))) { render('confirmation_trajet.php'); } elseif (isset($_POST['reservation_confirmation'], $_POST['confirmation_trajet_id'], $_POST['confirmation_trajet_place'])) { render('reservation_confirmed.php'); } else { header("Location: ../Vue/rechercherTrajet.php"); }
<?php if (isset($_POST['arrive']) && $_POST['arrive'] == -1) { $liste_trajet = Trajet::afficherListeTrajet($_POST['depart']); } else { $liste_trajet = Trajet::afficherListeTrajet($_POST['depart'], $_POST['arrive']); } foreach ($liste_trajet as $main_array => $result) { $temps = date('d-n-Y H:i', $result['timestamp_trajet']); $html = '<div class="liste_reservation"><table class="pure-table pure-table-bordered"><thead><tr><th>Départ</th><th>Arrivé</th><th>Date Départ</th><th>Conducteur</th><th>Prix</th><th>Place Disponible</th><th></th></tr></thead><tbody>'; $html .= '<tr><td>' . ucfirst($result['ville_depart']) . '</td>'; $html .= '<td>' . ucfirst($result['ville_arrive']) . '</td>'; $html .= '<td>' . $temps . '</td>'; $html .= '<td> <a href="/Controller/ProfilController.php?context=profil&id_membre=' . Trajet::getTrajetConducteurId($result['id']) . '">' . Utilisateur::getUsername(Trajet::getTrajetConducteurId($result['id'])) . '</a></td>'; $html .= '<td>' . $result['prix'] . '€</td>'; $place = $result['nb_place'] == 0 ? "Complet" : $result['nb_place']; $html .= '<td>' . $place . '</td>'; $html .= '<td><a class="button-success pure-button" href="/Controller/ReservationController.php?id_trajet_r=' . $result['id'] . '"><i class="fa fa-car"></i> Réserver</a></td></tr></tbody></table>'; echo $html; }
echo $error; } } } $html = '<div class="liste_reservation_L">'; if (count($reservations) != 0) { $html .= '<table class="pure-table pure-table-bordered"><thead><tr><th> Conducteur </th> <th> Trajet </th> <th> Date </th> <th>Prix </th> <th> Nombre de place prise </th> <th> Note </th></tr></thead><tbody>'; foreach ($reservations as $array => $reservation) { $info_trajet = Trajet::getInformationTrajet($reservation['id_trajet'])[0]; $notation = array(5 => 'Amazing!', 4 => 'Super bon', 3 => 'Ca peut aller', 2 => 'Peut mieux faire', 1 => 'Ca fait mal'); $notation_select = '<form method="POST" action="/Controller/ProfilController.php?context=reservations&id_trajet=' . $info_trajet['id'] . '"><select name="note">'; foreach ($notation as $note => $description) { $notation_select .= '<option value="' . $note . '">' . $note . '-' . $description . '</option>'; } $notation_select .= '</select> <button type="submit" class="button-success pure-button" name="confirmation_note"><i class="fa fa-thumbs-up"></i> Note</button></form>'; $notation_r = Trajet::isTrajetValide($reservation['id_trajet']) ? $notation_select : 'Vous ne pouvez pas noter un trajet non valide'; $notation_r = Note::isNoteExiste($info_trajet['id']) ? 'Vous avez noté cette personne' : $notation_r; $date = date('d-n-Y H:i', $info_trajet['timestamp_trajet']); $html .= '<tr><td><a href="/Controller/ProfilController.php?context=profil&id_membre=' . $info_trajet['id_conducteur'] . '">' . Utilisateur::getUsername($info_trajet['id_conducteur']) . '<a href="/Controller/MessageController.php?context=envoie&id_membre=' . $info_trajet['id_conducteur'] . '"><img src="/image/mail.png" alt="Message"/></a></td>'; $html .= '<td>' . ucfirst($info_trajet['ville_depart']) . ' - ' . ucfirst($info_trajet['ville_arrive']) . '</td>'; $html .= '<td>' . $date . '</td>'; $html .= '<td>' . $info_trajet['prix'] . '</td>'; $html .= '<td>' . $reservation['nb_place'] . '</td>'; $html .= '<td>' . $notation_r . '</td></tr>'; } $html .= '</tbody></table>'; } else { $html .= '<div class="erreur"><p> Vous n\'avez pas de réservations pour le moment</p></div>'; } $html .= '</div>'; echo $html;
<?php require_once "../Config/autoload.php"; require 'LoginController.php'; if (!isset($_GET['context']) || empty(trim($_GET['context']))) { header('Location: ../Vue/rechercherTrajet.php'); } if ($_GET['context'] == 'trajets' && isset($_GET['id_trajet']) && Utilisateur::getUtilisateurId() == Trajet::getTrajetConducteurId($_GET['id_trajet'])) { render('mytrajet.php'); } elseif ($_GET['context'] == 'trajets' || $_GET['context'] == 'trajets' && isset($_GET['id_u'])) { render('mytrajet.php'); } elseif ($_GET['context'] == 'reservations' || $_GET['context'] == 'reservations' && isset($_GET['id_t'])) { render('myreservation.php'); } elseif ($_GET['context'] == 'profil') { render('profil.php'); } else { header('Location: ../Vue/rechercherTrajet.php'); }
<div class="reservation_c"> <p> Réservation de <?php echo $_POST['nb_place_reserver']; ?> place(s) pour <span class="price"><?php echo $_POST['nb_place_reserver'] * Trajet::getInformationTrajet($_POST['id_trajet'])[0]['prix']; ?> €</span></p> <form action="/Controller/ReservationController.php" method="POST"> <input type="hidden" name="confirmation_trajet_id" value="<?php echo $_POST['id_trajet']; ?> "> <input type="hidden" name="confirmation_trajet_place" value="<?php echo $_POST['nb_place_reserver']; ?> "> <button type="submit" class="button-success pure-button" name="reservation_confirmation"><i class="fa fa-car"></i> Réserver vos places </button> </form> </div>
<?php /** * Created by PhpStorm. * User: Jeff * Date: 23/09/2015 * Time: 22:16 */ require_once "Model.php"; require_once "Trajet.php"; require_once "Conf.php"; $objet = 0; $rep = 0; $rSQL = "SELECT * FROM Trajet"; // Requête à éffectuée $rep = Model::$pdo->query($rSQL); // ON appelle la fonction query avec la requête en param et on la stock dans $rep $tab_obj = $rep->fetchAll(PDO::FETCH_OBJ); foreach ($tab_obj as $i => $objet) { echo "Trajet : {$objet->pDep} , de couleur {$objet->pArr} et de marque {$objet->dateDep} <br> "; } echo '<br> post <br>'; // print_r( Trajet::getAllTrajet() ) ; echo '<br> post <br>'; // print_r( Trajet::getTrajetByID('3') ) ; echo '<br> post <br>'; $Xo = new Trajet('Montpellier', 'Vogue', '28/04'); // Contructeur ( marque , couleur , immat ) print_r($Xo->insertTrajet());