Вы находитесь на странице: 1из 5

EXAMEN

Semestre : 1 2
Session : Principale Rattrapage

Module : Technologies Web 2.0


Enseignant(s): UP web
Classes : 3A20 , 21,22, 23, 24, 25
Documents autorisés : OUI NON Nombre de pages :
Calculatrice autorisée : OUI NON Internet autorisée : OUI NON
Date : 17/01/2019 Heure:11 h00 Durée : 1h.30

Problème :

Une agence de voyage désire améliorer la gestion de réservation des hôtels, on se propose ainsi
d’automatiser la réservation des hôtels. Dans ce cadre, on propose de crée une application web
avec Symfony 3.4. Ainsi, vous êtes demandé de :

1- Générer le bundle « ReservationBundle ».

2- Soit le diagramme de classes suivant :

Hotel
Reservation
id
id
1 *
nom
date_arrive
lieu
type
etat
nbchambres
prixNuit
nbpersonnes

NB :

 L’attribut « date_arrive» est de type date.

Page 1
 L’attribut « etat» prend les valeurs complet ou partiel.

3- Créer la base de données « agence ».

4- Créer les entités qui correspondent au diagramme de classes suivant et générer le schéma
de la base.

5- Alimenter manuellement la table Hotel comme suit :

Figure 1

6- Afficher la liste des hôtels comme indiqué dans la « Figure 2 »

Figure 2

NB : Le lien Réserver n’est pas affiché que si l’état de l’hôtel est partiel.

Remarque: pour tester la valeur d’un paramètre au sein de twig, on peut procéder comme
suit{%if param = = 'valeur ' %} {% else %}

7- En cliquant sur le lien « Réserver », une redirection se fait vers la page contenant le
formulaire de réservation de l’hôtel comme indiqué dans la « Figure 3 ».

Page 2
Figure 3

 Le texte « Réservation de l’hôtel : x » est affiché, avec x est le nom de l’hôtel qui est
récupéré dynamiquement.

 Type de chambre est une liste déroulant statique qui contient les valeurs :
« individuelle », « double », « affaire » et « en groupe ».

8- En utilisant jQuery ;

 Une fois que le champ, Nombre de personnes est mis en valeur(en focus) : les deux
champs Nombre enfants et Nombre adultes apparaissent. La valeur du champ Nombre
de personnes prend la somme des deux champs Nombre enfants et Nombre adultes, une
fois que le champ Nombre adultes est défocalisé ( en blur) . (voir Figure 4).

Fonctions utiles :
val() : permet de récupérer la valeur d’un élément .
val(x) : permet d’attribuer la valeur x à un élément.
parseInt(str) : transforme la chaîne str en un entier.
focus() : est l’évènement qui concerne la focalisation sur un élément.
blur() : est l’évènement qui concerne l’arrêt de focalisation sur un élément,

Page 3
Figure 4

NB : La valeur du champ nombre de personnes est automatiquement récupérée qui


est égale à la somme du nombre des enfants et le nombre des adultes.

9- Ajouter le lien «Comparer les prix » (Figure 5), en cliquant sur ce lien le formulaire de la
Figure 6 est affiché :

Figure 5

Page 4
Figure 6

Le clic sur le bouton Rechercher affiche la liste des hôtels dans le lieu désiré et ayant
comme prix nuit entre les deux bornes du budget (comme le montre la Figure 7 ) .

Figure 7

Bon travail 

Page 5

Вам также может понравиться