Vous êtes sur la page 1sur 11

BAZIN Alban RT2A

BERNARD Guillaume
HARDY Maxime

Informatique
Projet – Agence de voyage

Disponible sur :
http://spartacus.iutc3.unicaen.fr/~maxime.hardy/gestion_agenceVoyages_RT2A/

Login administrateur : invite


Mot de passe administrateur : invite

Bazin, Bernard, Hardy Projet agence de voyage


Page 1| 11
I. Introduction
Le but du projet agence de voyage est de réaliser un site web d’une agence de
voyages proposant différent circuits. On pourra d’après le site web visualiser les
circuits proposés par l’agence, voir leurs descriptifs et réserver ce circuit. Le site
web aura aussi une partie administration qui permettra pour l’administrateur qui se
sera logué sur une page de pouvoir visualiser, ajouter et supprimer les voyages
proposés par l’agence.

Pour mener ce projet à bien, nous avons répartis le travail à effectuer en plusieurs
taches. Tout d’abord il a fallu réfléchir sur la manière dont allé fonctionner le site
web et les relations entre ces différentes parties. Cette étude est la réalisation du
schéma entités associations correspondant à la base de données.

II. Schéma entités-associations

Nous avons tout d’abord réalisé ce modèle manuellement ainsi que le modèle
conceptuel et la création des tables, mais par souci de clarté nous nous sommes
servis du logiciel Analyse SI qui permet de réaliser le schéma entités-
associations, le modèle relationnel et la génération du code mysql pour la
création des tables automatiquement à partir de nos données.

Ce schéma à été réalisé à partir des données fournies dans la présentation du


projet et de connaissances personnelles.

La base de données de l’agence sera composée de huit tables qui sont liées par
des relations.

Bazin, Bernard, Hardy Projet agence de voyage


Page 2| 11
Fonctionnement du schéma :

Un voyage proposé par l’agence est composé d’un circuit qui est composé
d’escales. Les clients logeront dans un type d’hébergement durant les escales. Un
accompagnateur est attitré à chaque circuit. A partir du voyage, les clients peuvent
le réserver. L’administrateur pourra consulter, ajouter ou supprimer des voyages,
circuits, hôtels … D’où le schéma entité association ci-dessus qui regroupe ces
différentes tables.
Les champs soulignés dans chaque table, sont les clés primaires de celles ci.
Tout les autres champs sont ceux qui composent les tables pour les caractérisées.

A partir de ce modèle, nous avons pu déterminer le schéma de base de données


relationnel normalisé qui permet de spécifier les différentes tables avec les
différentes relations entre celles ci.

III. Modèle relationnel

Le modèle ci-dessus représente le schéma de base de données relationnel


normalisé où l’on peut voir les relations entre les tables ainsi que les références
qu’il y a entre ces tables.

A partir de ce modèle, nous avons alors créé les différentes tables que comporte
notre projet.

Pour créer des tables, nous devons être sous linux et nous mettre dans mysql.

Connexion à mysql :
Nous avons effectuer notre projet à partir du compte de Maxime Hardy.

$mysql –u maxime_hardy –h spartacus –p


Nous devons ensuite rentrer le mot de passe de connexion à mysql.

Bazin, Bernard, Hardy Projet agence de voyage


Page 3| 11
Nous sommes ensuite connectés à mysql. Nous allons créer nos tables dans la base
de données RT2 de l’IUT.

Utilisation de la base :
mysql>>use RT2_maxime_hardy ;

Une fois la base sélectionnée, nous allons appeler notre fichier qui contient le code
mysql pour la création des différentes tables.

Appel du fichier :
mysql>>source fichier_source.mysql ;

La création des tables s’effectue automatiquement.

Exemples de commandes de création de table :


CREATE TABLE voyage (ref_voyage int NOT NULL, date_depart datetime,
date_retour datetime, prix int, nb_personne int, num_circuit int);

ALTER TABLE voyage ADD CONSTRAINT PK_voyage PRIMARY KEY (ref_voyage);

Insertion des différents champs utiles dans la base de données :

Une fois la base de données faites, nous avons du la remplir avant de


commencer la création du site Web. Celui-ci faisant appel à cette base, il sera plus
facile pour nous de travailler en visualisant les données présentes sur la base de
donnée MySql. Prenons l’exemple d’une requête qui doit retourner des éventuels
voyages disponibles, si aucun voyage n’est présent, la requête va donc être vide et
sur notre page dynamique, rien n’apparaitra. Il sera donc difficile pour nous de
faire la distinction entre une erreur due au code et une erreur due à la base MySql.
Nous avons donc créé un script sql afin de remplir notre base de données. Il serait
trop long de l’expliquer en entier, voici un exemple d’une insertion de donnée dans
chaque table :

insert into hotel VALUES ('1','4','campanile','soiree dansante');

insert into accompagnateur VALUES ('1','bernard','jean-


claude','1417','1963/09/05','1993/10/02');

insert into voyage VALUES ('1','07/06/05 08:00:00','07/06/15


18:00:00','1000','1');

insert into circuit VALUES ('1','paris-marseille','culturel','25','10','2','france','1');

insert into escale VALUES ('1','07/06/05 08:00:00','07/06/10


12:00:00','paris','france','visites','hotel','1','1');

insert into admin VALUES ('invite','invite');

Notre base de donnée étant créée et remplie, notre travail va maintenant


consister à créer un site web pour notre agence de voyage. Sur ce site nos clients
Bazin, Bernard, Hardy Projet agence de voyage
Page 4| 11
pourront aller observer les différents voyages proposés, et s’ils sont intéressés, ils
auront la possibilité de réserver. De plus, pour une question de facilité d'insertion,
de modification et de suppression de données, nous pensons qu'il serait utile de
mettre en place une authentification en ligne pour nos administrateurs. Ils
pourront donc effectuer ces taches en interface graphique sur un navigateur web.
Une fois nos tables créent, nous avons commencé la réalisation du site web.

IV. Le site web


Avant de créer les pages de notre site web, nous avons tout d’abord rédigé sur
papier un schéma avec les différents besoins de notre site et les différentes pages
nécessaires.

Schéma conceptuel du site web :

Comme nous le montre ce schéma conceptuel, nous avons deux types


d'utilisateurs :
− Un client
− Un administrateur

Le choix d'un utilisateur administrateur est justifié par le fait qu'il est
agréable de pouvoir effectuer des modifications de la base de données en
mode graphique, sans passer par les nombreuses commandes de MySql.
Ce choix nous impose donc de découper le site en deux parties :
− un espace accessible pour tous
− un espace réservé aux administrateurs

Dans l'espace accessible pour tous, nous avons définit trois


rubriques disponibles pour l'utilisateur :
− Recherche d'un voyage en France
− Recherche d'un voyage à l'étranger
− Contacter l'agence

Dans l'espace accessible que par les administrateurs, nous avons


définit de nombreuses fonctions, essentielles à l'insertion, à la
modification et à la suppression de données.

Bazin, Bernard, Hardy Projet agence de voyage


Page 5| 11
Espace client :
1. Recherche d’un voyage en France

Le client peut choisir un des voyages en France proposés par l’agence, il fait
ce choix à l’aide d’un menu déroulant contenant les noms des circuits. Une
fois ce choix fait, le client a la possibilité de voir le descriptif complet du
voyage en question. Ce descriptif contient :
- Les caractéristiques du circuit
- Le voyage auquel il correspond
- Les différentes escales du circuit
- Les hôtels fréquentés
- L’accompagnateur attitré au séjour

Après avoir pris connaissance du descriptif complet du voyage, le client a le choix


de réserver ce voyage ou de faire une nouvelle recherche si ce voyage ne lui
correspond pas.

La procédure de réservation avec enregistrement dans la base de données est trop


longue à mettre en œuvre, nous avons donc opté par une procédure plus simple, à
savoir que lorsqu’il souhaite réserver un voyage, il est dirigé vers une page
indiquant les étapes de réservation :
- Imprimer le descriptif du voyage désiré
- Indiquer au dos ses coordonnées
- Le nombre de personne
- Le mode de paiement

Bazin, Bernard, Hardy Projet agence de voyage


Page 6| 11
L’enregistrement s’effectuera donc par les administrateurs après réception du
courrier. Une confirmation sera envoyée par courrier avec la procédure de
paiement du voyage. Si le nombre maximum de places disponibles est dépassé, le
client sera informé par email.

2. Recherche d’un voyage à l’étranger

La recherche d’un voyage à l’étranger a été réalisée de la même façon que pour la
recherche d’un voyage en France.

3. Contacter l’agence

Bazin, Bernard, Hardy Projet agence de voyage


Page 7| 11
Le client a possibilité via la section contact d’envoyer un e-mail à l’agence ou de
récupérer les coordonnées de celle-ci.

Espace administrateur :
Dans notre site WEB nous avons une page attribuée à l’administrateur de ce site.
Cette page permettra à l’administrateur de gérer le contenu des bases de
données. Par mesure de sécurité, nous avons mis un système d’identification de
l’administrateur car les informations contenues dans la base de données de
l’agence ne doivent en aucun cas être accessible par les clients.

Ce système d’identification a été crée par un programme « php » qui est


configuré pour vérifier si les informations (login et mot de passe) données par la
personne, qui veut entrer sur la page administrateur, sont correctes. Le
programme « php » va permettre la connexion à la base de données où sont
créées toutes les tables nécessaires pour notre site « agence de voyage ».

Puis une fois que nous somme connecté à la base de données ce programme va
se charger d’aller vérifier si le login et le mot de passe rentrés par
l’administrateur sont identiques au login et au mot de passe inscrit dans la table
« admin». Si les informations rentrées par l’administrateur sont correctes alors un
message apparaît pour prévenir que l’administrateur vient de se loguer. Par
contre si ces informations sont fausses un message d’alerte apparaît et
l’utilisateur est redirigé vers la d’identification.

Bazin, Bernard, Hardy Projet agence de voyage


Page 8| 11
Une fois que l’identification de l’administrateur est validée, l’administrateur peut
donc travailler sur les tables de la base données ce qui permet de faire une mise
à jour de celle-ci. L’administrateur peut donc ainsi réaliser les démarches
suivantes :

• Consulter la table pour les voyages (table « voyage »), les circuits (table
« circuit »), les escales (table « escale »), les hôtels pour les escales (table
« hotel »), les accompagnateurs pour chaque circuit (table « accompagna-
teur ») et la table pour l’identification des administrateurs (table « ad-
min »).

• Ajouter des champs dans les différentes tables existantes dans la base de
données. L’administrateur peut donc ainsi créer des nouveaux voyages,
circuits, escales, hôtels, accompagnateurs et également ajouter des nou-
veaux identifiants pour la connexion de plusieurs administrateurs.

• Supprimer des champs des tables existantes dans la base de données.


L’administrateur peut donc enlever des voyages qui n’existent plus. Si un
des voyages n’existent plus il faudra également supprimer le circuit, les
escales, les hôtels, les accompagnateurs relatifs à ce voyage.

Bazin, Bernard, Hardy Projet agence de voyage


Page 9| 11
Consultation des circuits

Ajout d’un circuit

Suppression d’un circuit

Ce projet nous a permis de réaliser un travail dans sa totalité d’après un cahier des
charges et de réaliser ce travail en groupe ainsi que de se répartir les taches selon
nos connaissances. Nous avons grâce à ce projet mettre en œuvre les connaissances
acquissent lors de notre formation tel que les bases de données, le php, le html.
Ces déférentes connaissances nous ont permis de mener ce projet tout au long de
se quatrième semestre. Nous n’avons pas peu réalisé le projet dans sa totalité
comment l’était indiqué dans le cahier des charges, car le temps impartit pour la
réalisation de ce projet était assez court, nous n’avons pas eu le tems de réaliser la

Bazin, Bernard, Hardy Projet agence de voyage


Page 10| 11
partie relation du prix du voyage avec la date et les critères des clients ainsi que la
partie réservation. Nous avons préféré réaliser la partie accès à la base de données
depuis le site web ainsi que la recherche dans la base et aussi la partie
administration qui permet de modifier la base de données depuis le site web. Ce
projet était intéressant dans le fait qu’il regroupe de nombreuses connaissances et
que nous ayons appris de nombreuses choses grâce à celui ci.

Bazin, Bernard, Hardy Projet agence de voyage


Page 11| 11