projet evolution - photos by sonisoni33.free.fr/dossiers/projet_evolution_fesneau.soni.pdf ·...
TRANSCRIPT
ANGLADE Ludovic FESNEAU Soni
Cesi 2010 – GMSI 28
PROJET EVOLUTION
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
2
Sommaire
Contenu Introduction ............................................................................................................................................. 4
CAHIER DES CHARGES ......................................................................................................................... 4
Les ressources Technique de L’entreprise .......................................................................................... 5
1 - Les locaux : ..................................................................................................................................... 5
2 – Le matériel: .................................................................................................................................... 5
2 – Les Imprimantes : .......................................................................................................................... 5
Devis Matériel et Logiciel ........................................................................................................................ 5
Serveur LS Group ..................................................................................................................................... 9
1 - Rôle des serveurs : ......................................................................................................................... 9
a) Serveurs WINDOWS .................................................................................................................... 9
b) Serveur LINUX ............................................................................................................................. 9
Procédure d’installation Windows 2003 Server : .................................................................................. 10
....................................................................................................................................................... 11
Installation Windows 2003 R2 ....................................................................................................... 11
Partitionnement des disques durs ................................................................................................ 11
Configuration des rôles 2003 serveur ................................................................................................... 12
Active Directory ................................................................................................................................. 12
Serveur DNS ....................................................................................................................................... 13
Serveur DHCP .................................................................................................................................... 14
Serveur de fichiers ............................................................................................................................. 15
Serveur d’impression ......................................................................................................................... 15
Linux – Installation et Configuration ..................................................................................................... 16
Installation de Debian Serveur .......................................................................................................... 16
Installation des Packages ................................................................................................................... 18
a) Open SSH ............................................................................................................................... 18
b) Nmap ..................................................................................................................................... 18
c) Mysql et Phpmyadmin ........................................................................................................... 19
d) Apache ................................................................................................................................... 20
e) Interface web phpMyAdmin.................................................................................................. 21
f) Samba .................................................................................................................................... 22
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
3
g) Webmin ................................................................................................................................. 22
Intranet LSGroup ................................................................................................................................... 24
Analyse SI ........................................................................................................................................... 24
Mysql et base SQL ............................................................................................................................. 25
Application PHP ................................................................................................................................. 25
Installation de Windows XP ................................................................................................................... 26
Installation ......................................................................................................................................... 26
Installation d’ Ubuntu ............................................................................................................................ 30
ANNEXES .............................................................................................................................................. 31
Annexe 1 : La Base SQL ...................................................................................................................... 32
Annexe 2 : L’Intranet ......................................................................................................................... 36
Annexe 3 : Le Planing ........................................................................................................................ 39
Annexe 3 : Pages PHP (aperçus) ........................................................................................................ 41
Accueil.php .................................................................................................................................... 41
Admin.php ..................................................................................................................................... 42
Ajoutposte.php .............................................................................................................................. 45
Bonjour.php ................................................................................................................................... 49
Connexion.php .............................................................................................................................. 50
Detailposte.php ............................................................................................................................. 50
Index.php ....................................................................................................................................... 53
Listeposte.php ............................................................................................................................... 55
Modificationposte.php .................................................................................................................. 58
Rechercheform.php ....................................................................................................................... 61
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
4
Introduction Le projet Evolution est notre deuxième projet de notre formation de GMSI, il est la suite logique au
projet START. L’objectif principal est la réalisation d'une architecture informatique sur la base de
système Windows 2003 server et Unix.
Pour les besoins de ce projet nous avons créé la société LS, c'est une centrale d'achat d'un groupe
nationale, son organisation est présenter par la suite par l’intermédiaire d'un organigramme.
L’objectif du projet est d’administrer un réseau local tout en améliorant les pratiques. Voici plus précisément ce que l’entreprise attend de nous. Il faudra : - administrer le réseau local et en gérer la sécurité - administrer les serveurs LINUX et Windows 2003 Server - élaborer des requêtes SQL simples pour les utilisateurs - former les utilisateurs pour faciliter leur travail - créer des applications VB.net simples - Les tolérances de pannes - Mettre en place un outil de gestion de parc - Instaurer des bases de connaissance destinée aux utilisateurs et au service informatique Pour réponde à ces attentes, le DAF nous a soumis un cahier des charges à respecter rigoureusement : La direction de l’entreprise LS Group a fait appel à son service informatique, Soni et Ludovic pour administrer la totalité de son parc informatique et améliorer la maintenance de ce dernier. La solution de tolérance de panne nous est apparue comme un point incontournable afin de
proposer une qualité de service optimum il s'agit pour nous d'offrir les outils informatique les plus
performants du moment à l'entreprise et aux utilisateurs dans le but d'atteindre une qualité de
service. De plus l’outil de gestion du parc informatique, est pour nous un élément indispensable pour
maintenir des lots de matériels opérationnels. Cela nous permet aussi de pourvoir planifier les
budgets pour un renouvellement partiel ou total des matériels du parc.
CAHIER DES CHARGES Les contraintes qui nous ont été imposées sont : - un délai de 6 mois pour accomplir la mission - un compte rendu mensuel sur les avancées des travaux (planning, tableaux indicateurs …) - un rapport d’activité globale sur les solutions mises en place, les procédures d’installation, de déploiement, le prix… - implanter Active Directory dans l’entreprise - élaborer une gestion des utilisateurs - créer un système de repérage des utilisateurs pour un meilleur dépannage - créer une base de données sur le parc
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
5
Les ressources Technique de L’entreprise
Le projet Evolution est la suite logique du projet Start. Voici les ressources dont nous disposons pour réaliser ce projet :
1 - Les locaux : - 3 bâtiments de deux niveaux - un câblage complet des locaux en catégorie 6 - de la fibre optique entre les bâtiments - un local technique à chaque niveau (salle C, H, L, Q, W, T)
2 – Le matériel:
Disposition des Switch dans les 3 Bâtiments : Bâtiment principal :
- 2 Switch au Rez-de-chaussée - 2 Switch au 1er Etage
Bâtiment OUEST : - 1 Switch au Rez-de-chaussée - 1 Switch au 1er Etage
Bâtiment EST : - 1 Switch au Rez-de-chaussée - 1 Switch au 1er Etage
2 – Les Imprimantes : - Il faut 1 imprimante pour chaque service nommée « Printnom » du service
- Une imprimante réseau pour tout le monde (les services Produit 1 et 2 ne peuvent
imprimer qu’entre 8 heures du matin et 17 heures)
Devis Matériel et Logiciel Les Serveurs : Pour répondre aux objectifs du projet Evolution, nous avons dû acheter des serveurs :
- 2 serveurs pour le déploiement de Windows 2003 Server - 1 serveur pour le déploiement de Linux Server - 1 Serveur NAS pour la sauvegarde des serveurs et des données - 1 KVM 4 ports minimum - Onduleur - Pack Clavier souris pour le KVM - 100 licences cals W2003
Pour nos serveur nous avons fait un appel offre à la société DELL tous nos serveurs ont une garantie de trois ans et un dépannage d’un technicien Dell dans un délai de 4H ouvrable avec renouvellement possible du contrat.
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
6
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
7
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
8
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
9
Serveur LS Group
1 - Rôle des serveurs :
a) Serveurs WINDOWS
1er Serveur 2003 Serveur DNS Gère Active Directory Serveur d’impression Serveur de fichiers Serveur DHCP. 2ième Serveur 2003 Serveur de secours : réplication des données et services du 1er Serveur. Configuration du premier serveur : Nom : SRV1 Adresse IP : 192.168.1.240 Services installés : - Serveur DNS - Active Directory - Serveur Impression - Serveur DHCP - Serveur de Fichier (DFS) - Plug-in GPMC (Plug-in Microsoft pour gérer les GPO) Configuration du deuxième serveur (secours) : Nom : SRV2 Adresse IP : 192.168.1.241 Services installés : - Serveur redondant Active Directory - Serveur redondant DHCP - Serveur redondant DNS - Serveur redondant de Fichier (DFS) - Plug-in GPMC (Plug-in Microsoft pour gérer les GPO)
b) Serveur LINUX
Serveur DEBIAN Samba avec FTP Samba et hébergement de l’intranet.
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
10
Procédure d’installation Windows 2003 Server : Pour la suite de notre projet nous avons installé
Windows 2003 R2
Apres le formatage Windows copie les fichiers dans le
dossier de Windows
A la fin de la copie le serveur redémarre.
Assistant d’installation nous demande le numéro
de série.
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
11
Installation Windows 2003 R2
A la fin de l’installation assistant de Windows nous demande le CD2 de Windows 2003 serveur afin
de mettre Windows 2003 à jour version R2
Partitionnement des disques durs
Voici la configuration des partitions des disques durs avec plusieurs partitions sont créés afin de garantir une sécurité des données. Une partition Os, Journal, Sysvol, Netlogon, Data.
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
12
Configuration des rôles 2003 serveur
Active Directory Cela permet d’autoriser ou de restreindre l’accès aux ressources du domaine grâce à un profil utilisateur intégré à l’annuaire d’Active Directory. C’est un service d’annuaire qui permet de gérer les ressources du réseau : données, utilisateurs, imprimantes, groupes, ordinateurs et stratégies de sécurité.
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
13
Serveur DNS Les ordinateurs connectés à un réseau possèdent tous une adresse IP. Cependant, il n'est pas toujours évident de retenir ce numéro lorsque l'on désire accéder à un ordinateur. Il permet de faire correspondre le nom de domaine à une adresse IP pour les machines du réseau. Une zone de recherche directe contient des mappages nom d'hôte / adresse IP alors qu'une zone de recherche inversée contient des mappages adresse IP / nom d'hôte. Ainsi, une zone de recherche directe permet de trouver l'adresse IP correspondant à un nom d'hôte alors qu'une zone de recherche inversée permet de trouver un nom d'hôte à partir d'une adresse IP.
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
14
Serveur DHCP Il attribue automatiquement des adresses IP aux machines du réseau. Il est possible de configurer les plages d’adresses IP sur lesquelles appliquer ce service et de créer des exceptions.
Il s'agit d'un protocole qui permet à un ordinateur qui se connecte sur un réseau d'obtenir dynamiquement (c'est-à-dire automatiquement) sa configuration réseau. Vous n'avez qu'à spécifier à l'ordinateur de se trouver une adresse IP tout seul par DHCP. Le but principal étant la simplification de l'administration d'un réseau. Pour qu'un serveur DHCP puisse distribuer des adresses IP, il est nécessaire de lui donner une plage d'adresses. Dans notre cas, nous avons choisi deux plages d’adresse allant de 192.168.1.2 à 192.168.1.100 sur le premier serveur et une autre plage allant de 192.168.1.101 à 192.168.1.254. Afin d’avoir des adresses IP « fixe » pour nos serveurs, nous avons exclus les adresses entre 192.168.1.240 et 192.168.1.254 du service DHCP.
Nous avons donné à nos serveurs des adresses IP « fixe » suivantes:
Serveur Windows 2003 Saturne 192.168.1.240 Serveur Windows 2003 Mercure 192.168.1.241 Serveur Linux Intranet lsgroup 192.168.1.250 Serveur de Sauvegarde Jupiter 192.168.1.243/192.168.1.244 Nous avons aussi donné à nos imprimantes des adresses IP « fixes » :
PrintInformatique 192.168.1.234 PrintSAV 192.168.1.230 PrintProduitB 192.168.1.233 PrintProduitA 192.168.1.232 PrintCommun 192.168.1.215 PrintDirection 192.168.1.231 Le fait de « fixer » les adresses IP des serveurs et imprimantes empêche le serveur DHCP de modifier ces adresses. Si ces adresses étaient modifiés, le serveur (ou imprimantes) ne serai plus accessible.
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
15
Serveur de fichiers Il assure le stockage des fichiers mis en commun sur le réseau.
Un serveur de fichiers (DFS) permet de partager des données à travers un réseau. Il faut pour cela créer des dossiers partagés et attribuer les droits d’accès aux utilisateurs. Nous avons créé un premier dossier commun à l’entreprise nommé « partage » à l’intérieur duquel nous avons créé un dossier commun à chaque service. Des dossiers partagés peuvent être automatiquement attribués à un utilisateur lors de sa connexion comme lecteurs réseau. (cf. annexes procédures Windows Serveur 2003 « Attribuer un lecteur réseau à un utilisateur lors de sa connexion ») Ces dossiers sont donc disponibles à l’utilisateur dans le Poste de travail au même titre qu’un disque local.
Serveur d’impression Nous avons mis à la disponibilité de chaque service une imprimante nommé « PrintNomduservice » comme par exemple «PrintInformatique » ainsi qu’une imprimante commune à tous les utilisateurs nommée « PrintCom ». Etant donné que la direction doit être prioritaire sur les impressions, nous avons créé deux imprimantes logiques correspondant à une imprimante physique. A l’imprimante physique «PrintInformatique » correspond les imprimantes logiques «PrintAdministratifDG » avec une priorité 99 pour la direction et «PrintInformatique » avec une priorité 1 pour les autres utilisateurs ayant les droits d’utiliser cette imprimante.
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
16
Linux – Installation et Configuration
Installation de Debian Serveur
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
17
Nous avons choisis la distribution Debian comme serveur Linux.
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
18
Installation des Packages
a) Open SSH
La commande « apt-get update » permet de mettre à jour les paquets :
La commande « apt-get install openssh-server » permet d’installer OPEN SSH (permet de créer un
tunnel SSH):
b) Nmap
La commande « apt-get install nmap » permet d’installer NMAP (pour voir les protocoles ouverts):
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
19
La commande « nmap localhost » permet de regarder les ports ouverts :
c) Mysql et Phpmyadmin
La commande « apt-get install mysql-server phpmyadmin » : installe mysql serveur avec phpmyadmin et apache2.
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
20
d) Apache
Interface Web
Apres l’installation on peut vérifier que apache est bien configuré et en fonctionnement en tapant
dans le navigateur internet http://debian28 ou IP du serveur.
Modification des droits accès
Mot de passe utilisateur
Ajout d’un mot de passe pour utilisateur www-data :
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
21
Fillezilla Windows
Après avoir modifié les droits et ajouter un mot de passe on peut accéder par intermédiaire d’un
logiciel FTP exemple « Fillezilla ».
Ce qui va nous permettre de transféré les fichiers pour l’intranet de la société.
e) Interface web phpMyAdmin
Le serveur Web a été mis en place sous linux pour accueillir un site intranet PHP qui regroupe tous les utilisateurs, ainsi que toute les caractéristiques des machines présentes sur le réseau LS Group.
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
22
f) Samba
g) Webmin
Webmin est une interface web, sous licence BSD (gratuit), qui permet d'administrer un serveur UNIX ou Linux à distance via n'importe quel navigateur web. Pour installer Webmin il faut aller modifier le fichier sources.list Pour cela on utilise la commande « nano /etc/apt/sources.list ».
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
23
Dans le fichier sources.list on rajoute la ligne :
« deb http://download.webmin.com/download/repository sarge contrib ».
Par la suite « apt-get update » pour mettre les paquets à jour :
La commande « apt-get install webmin » lance installation :
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
24
Aperçus de Webmin :
Via Webmin, nous pouvons prendre la main à distance sur le serveur DEBIAN avec une interface
graphique.
Intranet LSGroup
Analyse SI
Dictionnaire : Il contient toutes
les clés de la base, le type de
clé ...
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
25
MCD : C’est là que l’on crée les tables ainsi que les
liens entre elles.
MLD : Il est généré par rapport au MCD et représente le
schéma de notre base de données.
Mysql et base SQL
MySQL est un système de gestion de base de données. Il fait partie des logiciels de gestion de base
de données les plus utilisés au monde. La base SQL est une base de donnée créée via le langage SQL
(sous forme de requête), on utilise des requêtes SQL pour ajouter, modifier ou extraire le contenue.
La requête permettant de créer notre base est disponible en Annèxe.
Application PHP
Pour crée nos pages de l’intranet nous avons utilisé le logiciel notepad++.
Des extraits de celles-ci sont disponibles en annexe 3.
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
26
Installation de Windows XP
Installation Nous avons créés un Windows XP allégé par intermédiaire du logiciel nlite.
Nous avons supprimé les applications qui ne servent à rien au sein de l’entreprise (exemple : les
jeux…).
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
27
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
28
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
29
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
30
Installation d’ Ubuntu
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
31
Annexes
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
32
Annexe 1 : La Base SQL
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
CREATE TABLE IF NOT EXISTS `Ecran` (
`codeEcran` int(11) NOT NULL auto_increment,
`modeleEcran` varchar(50) default NULL,
`numeroSerieEcran` varchar(50) default NULL,
`optionEcran` varchar(50) default NULL,
`debutGarantieEcran` date NOT NULL,
`finGarantieEcran` date NOT NULL,
`commentaireEcran` varchar(50) default NULL,
`codePoste` int(11) default NULL,
PRIMARY KEY (`codeEcran`),
KEY `FK_ecran_codeposte` (`codePoste`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
CREATE TABLE IF NOT EXISTS `Imprimante` (
`codeImprimante` int(11) NOT NULL auto_increment,
`nomImprimante` varchar(50) default NULL,
`modeleImprimante` varchar(50) default NULL,
`numeroSerieImprimante` varchar(50) default NULL,
`ipImprimante` varchar(50) default NULL,
`debutGarantieImprimante` date NOT NULL,
`finGarantieImprimante` date NOT NULL,
`commentaireImprimante` varchar(50) default NULL,
PRIMARY KEY (`codeImprimante`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
CREATE TABLE IF NOT EXISTS `Imprime_sur` (
`codeUtilisateur` int(11) NOT NULL,
`codeImprimante` int(11) NOT NULL,
KEY `FK_imprime_sur_codeutilisateur` (`codeUtilisateur`),
KEY `FK_imprime_sur_codeimprimante` (`codeImprimante`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
33
CREATE TABLE IF NOT EXISTS `Poste` (
`codePoste` int(11) NOT NULL auto_increment,
`nommagePoste` varchar(50) NOT NULL default '0',
`modelePoste` varchar(50) NOT NULL default '0',
`numeroSeriePoste` varchar(50) NOT NULL default '0',
`memoirePoste` int(11) NOT NULL default '0',
`disqueposte` int(11) NOT NULL default '0',
`systemePoste` varchar(50) NOT NULL default '0',
`debutGarantiePoste` date NOT NULL default '0000-00-00',
`finGarantiePoste` date NOT NULL default '0000-00-00',
`commentairePoste` varchar(50) NOT NULL default '0',
`codeUtilisateur` int(11) NOT NULL default '0',
`codeSwitch` int(11) NOT NULL default '0',
`codeSalle` int(11) NOT NULL default '0',
PRIMARY KEY (`codePoste`),
KEY `FK_poste_codeutilisateur` (`codeUtilisateur`),
KEY `FK_poste_codeswitch` (`codeSwitch`),
KEY `FK_poste_codesalle` (`codeSalle`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
CREATE TABLE IF NOT EXISTS `Salle` (
`codeSalle` int(11) NOT NULL auto_increment,
`nommageSalle` varchar(10) default NULL,
PRIMARY KEY (`codeSalle`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
CREATE TABLE IF NOT EXISTS `Switch` (
`codeSwitch` int(11) NOT NULL auto_increment,
`nommageSwitch` varchar(50) default NULL,
`modeleSwitch` varchar(50) default NULL,
`numeroSerieSwitch` varchar(50) default NULL,
`ipSwitch` varchar(50) default NULL,
PRIMARY KEY (`codeSwitch`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
34
CREATE TABLE IF NOT EXISTS `Utilisateur` (
`codeUtilisateur` int(11) NOT NULL auto_increment,
`nomUtilisateur` varchar(50)
default NULL,
`prenomUtilisateur` varchar(50)
default NULL,
`loginUtilisateur` varchar(50)
NOT NULL, `passwordUtilisateur`
varchar(50) NOT NULL,
`privilegeUtilisateur`
varchar(50) NOT NULL, PRIMARY
KEY (`codeUtilisateur`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
CREATE TABLE IF NOT EXISTS `v_multi`(
`nomUtilisateur` varchar(50) ,
`prenomUtilisateur` varchar(50) ,
`codePoste` int(11) ,
`nommagePoste` varchar(50) ,
`nommageSalle` varchar(10)
);
CREATE TABLE IF NOT EXISTS `v_Poste`(
`nommagePoste` varchar(50) ,
`nomUtilisateur` varchar(50) ,
`prenomUtilisateur` varchar(50) ,
`nommageSalle` varchar(10) ,
`nommageSwitch` varchar(50)
);
DROP TABLE IF EXISTS `v_multi`;
CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER
VIEW `base_EVO`.` v_multi` AS select
`base_EVO`.`Utilisateur`.`nomUtilisateur` AS `nomUtilisateur`,`base_EVO`.`
Utilisateur`.`prenomUtilisateur` AS
`prenomUtilisateur`,`base_EVO`.`Poste`.`codePoste` AS `
codePoste`,`base_EVO`.`Poste`.`nommagePoste` AS
`nommagePoste`,`base_EVO`.`Salle`.` nommageSalle` AS `nommageSalle` from
(`base_EVO`.`Utilisateur` left join (`base_EVO`.`Poste` left join
`base_EVO`.`Salle` on((`base_EVO`.`Salle`.`codeSalle` =
`base_EVO`.`Poste`.` codeSalle`)))
on((`base_EVO`.`Utilisateur`.`codeUtilisateur` = `base_EVO`.`Poste`.`
codeUtilisateur`)));
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
35
DROP TABLE IF EXISTS `v_Poste`;
CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER
VIEW `base_EVO`.` v_Poste` AS select `base_EVO`.`Poste`.`nommagePoste` AS
`nommagePoste`,`base_EVO`.` Utilisateur`.`nomUtilisateur` AS
`nomUtilisateur`,`base_EVO`.`Utilisateur`.`prenomUtilisateur ` AS
`prenomUtilisateur`,`base_EVO`.`Salle`.`nommageSalle` AS
`nommageSalle`,`base_EVO`.` Switch`.`nommageSwitch` AS `nommageSwitch`
from (((`base_EVO`.`Poste` join `base_EVO`.`
Utilisateur`) join `base_EVO`.`Salle`) join `base_EVO`.`Switch`) where
((`base_EVO`.` Utilisateur`.`codeUtilisateur` =
`base_EVO`.`Poste`.`codeUtilisateur`) and (`base_EVO`.`Salle `.`codeSalle`
= `base_EVO`.`Poste`.`codeSalle`) and (`base_EVO`.`Switch`.`codeSwitch` =
` base_EVO`.`Poste`.`codeSwitch`));
ALTER TABLE `Ecran`
ADD CONSTRAINT `FK_ecran_codeposte` FOREIGN KEY (`codePoste`)
REFERENCES `Poste` (` codePoste`);
ALTER TABLE `Imprime_sur`
ADD CONSTRAINT `FK_imprime_sur_codeimprimante` FOREIGN KEY
(`codeImprimante`) REFERENCES ` Imprimante` (`codeImprimante`),
ADD CONSTRAINT `FK_imprime_sur_codeutilisateur` FOREIGN KEY
(`codeUtilisateur`) REFERENCES `Utilisateur` (`codeUtilisateur`);
ALTER TABLE `Poste`
ADD CONSTRAINT `FK_poste_codesalle` FOREIGN KEY (`codeSalle`)
REFERENCES `Salle` (` codeSalle`),
ADD CONSTRAINT `FK_poste_codeswitch` FOREIGN KEY (`codeSwitch`)
REFERENCES `Switch` (` codeSwitch`),
ADD CONSTRAINT `FK_poste_codeutilisateur` FOREIGN KEY
(`codeUtilisateur`) REFERENCES ` Utilisateur` (`codeUtilisateur`);
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
36
Annexe 2 : L’Intranet
Afin de faciliter les interventions des techniciens, nous avons créé un Intranet regroupant les
informations de chaque matériel informatique avec leur emplacement physique respectif.
Pour des raisons de sécurité, les utilisateurs peuvent seulement voir les informations alors que les
techniciens peuvent ajouter, modifier ou même supprimer des données.
Voici un aperçu de celui-ci :
La page d’accueil
En mode Administra-
teur : nous avons
accès, via le menu,
à la liste et à l’ ajout
d’ information.
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
37
En mode Admini-
strateur : on peut
modifier et/ou
supprimer du
contenu.
En mode Utilisateur :
on constate que l’utili-
sateur n’a pas accès
à « Ajouter ».
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
38
En mode Utilisa-
teur : l’utilisateur
peut seulement
voir la liste.
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
39
Annexe 3 : Le Planing
Affectation Nom de la tâche Durée Début Fin
soni, Ludovic Analyse du Project 0,5 jour Ven 26/02/10
Ven 26/02/10
soni, Ludovic Analyse des points important du projet 1 jour Ven 26/02/10
Ven 26/02/10
soni, Ludovic Choix de L'entreprise 1 jour Sam 27/02/10
Sam 27/02/10
soni, Ludovic Choix du logo de l'entreprise 1 jour Lun 01/03/10
Lun 01/03/10
soni, Ludovic Formation CESI - 2003 serveur 3 jours Lun 22/03/10
Mer 24/03/10
soni, Ludovic Formation CESI - Communication 2 jours Jeu 25/03/10
Ven 26/03/10
soni, Ludovic Topologie 2003 Serveur 1 jour Lun 29/03/10
Lun 29/03/10
soni, Ludovic Choix et répartition des serveurs 2003 et linux 2 jours Mer 31/03/10
Jeu 01/04/10
soni, Ludovic Demande de devis Dell 0,5 jour Ven 02/04/10
Ven 02/04/10
soni, Ludovic Demande de devis HP 0,5 jour Ven 02/04/10
Ven 02/04/10
soni, Ludovic Demande de devis matériel Edox 1 jour Lun 05/04/10
Lun 05/04/10
soni, Ludovic Demande de devis matériel Cybertek 1 jour Mar 06/04/10
Mar 06/04/10
soni, Ludovic Demande de devis matériel Surcouf 1 jour Mer 07/04/10
Mer 07/04/10
soni, Ludovic Réception du devis Dell 1 jour Jeu 08/04/10
Jeu 08/04/10
soni, Ludovic Choix adressage Ip des serveur et configuration DHCP
1 jour Ven 09/04/10
Ven 09/04/10
soni, Ludovic Configuration Vmware 1 jour Lun 12/04/10
Lun 12/04/10
soni, Ludovic Choix des roles 2003 serveur 1 jour Mer 14/04/10
Mer 14/04/10
soni, Ludovic Installation des deux serveurs 2003 R2 1 jour Jeu 15/04/10
Jeu 15/04/10
soni, Ludovic Mise à jour des serveurs 2003 1 jour Ven 16/04/10
Ven 16/04/10
soni, Ludovic Formation CESI - 2003 serveur 5 jours Lun 19/04/10
Ven 23/04/10
soni, Ludovic Configuration Srv Nas 1 jour Lun 26/04/10
Lun 26/04/10
soni, Ludovic Configuration des rôles 2003 serveur 2 jours Mar 27/04/10
Mer 28/04/10
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
40
soni, Ludovic Création des User dans Active Directory 2 jours Jeu 29/04/10
Ven 30/04/10
soni, Ludovic Installation Debian serveur 2 jours Lun 03/05/10
Mar 04/05/10
soni, Ludovic Déploiement logiciels 1 jour Mer 05/05/10
Mer 05/05/10
soni, Ludovic Création Base LsGroup 2 jours Jeu 06/05/10
Ven 07/05/10
soni, Ludovic Formation CESI - Automatisation 5 jours Lun 24/05/10
Ven 28/05/10
soni, Ludovic GPO Utilisateurs 1 jour Lun 31/05/10
Lun 31/05/10
soni, Ludovic Partage Réseau 1 jour Mer 02/06/10
Mer 02/06/10
soni, Ludovic Installation Php my admin 1 jour Jeu 03/06/10
Jeu 03/06/10
soni, Ludovic Intranet développement 35 jours Lun 28/06/10
Ven 13/08/10
soni, Ludovic Script Sauvegarde des serveurs 2 jours Lun 07/06/10
Mar 08/06/10
soni, Ludovic Création des droits Utilisateurs 2 jours Mer 09/06/10
Jeu 10/06/10
soni, Ludovic Bureau à distance Via Windows 1 jour Jeu 10/06/10
Jeu 10/06/10
soni, Ludovic Bureau à distance Via Intranet 1 jour Jeu 10/06/10
Jeu 10/06/10
soni, Ludovic Configuration de Webmin 2 jours Lun 14/06/10
Mar 15/06/10
soni, Ludovic Formation CESI - Unix/Linux 5 jours Lun 21/06/10
Ven 25/06/10
soni, Ludovic Configuration de Linux 3 jours Lun 28/06/10
Mer 30/06/10
soni, Ludovic Formation CESI - Base de données 5 jours Lun 26/07/10
Ven 30/07/10
soni, Ludovic Mise en place des procédures Installation xp, 2003, debian
3 jours Lun 02/08/10
Mer 04/08/10
soni, Ludovic Mise à jour de l’intranet 6 jours Lun 16/08/10
Lun 23/08/10
soni, Ludovic Rédaction du Rapport 10 jours Lun 09/08/10
Ven 20/08/10
soni, Ludovic Formation CESI - Anglais 1 jour Lun 23/08/10
Lun 23/08/10
soni, Ludovic Création du Powerpoint 1 jour Mar 24/08/10
Mar 24/08/10
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
41
Annexe 3 : Pages PHP (aperçus)
Accueil.php
<?php require_once('connexion.php'); ?> <?php
/*
-----------------------------------
------ SCRIPT LS GROUP -------
-----------------------------------
*/
session_start(); // On relaye la session
if (session_is_registered("authentification")){ // vérification sur la session
authentification (la session est elle enregistrée ?)
// ici les éventuelles actions en cas de réussite de la connexion
}
else { header("Location:index.php?erreur=intru"); // redirection en cas d'echec
}
?>
<html>
<head>
<title>ESPACE PRIVE - LSgroup</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link href="styles.css" rel="stylesheet" type="text/css"> <link rel="shortcut icon" type="image/x-icon" href="image/LSgroup.png" /> </head>
<body>
<center>
<a href="index.php"> <IMG WIDTH="170px" SRC="image/LSgroup.png" title="Accueil" BORDER=0 /> </a>
</center>
<p align="center" class="titre"><strong>- : : : VOTRE ESPACE PRIVE : : : -</strong></p>
<p>Bienvenue "<span class="donnee"><?php echo $_SESSION['prenomUtilisateur']; ?></span>
<span class="donnee"><?php echo $_SESSION['nomUtilisateur']; ?></span>" dans votre espace sécurisé. <br> Vous êtes connecté en tant que "<span class="donnee"><?php echo $_SESSION[ 'loginUtilisateur']; ?></span>" avec le privilège "<span class="donnee"> <?php echo $_SESSION['privilegeUtilisateur']; ?></span>".<br> Votre mot de passe est "<span class="donnee"><?php echo $_SESSION['passwordUtilisateur'
]; ?></span>" (chiffré par MD5 > ne peut donc être vivible en clair).</p> <p>
<?php
/*
--- AFFICHAGE CONDITIONNEL OU REDIRECTION EN FONCTION DU PRIVILEGE ---
Config actuelle : le script gère un affichage conditionnel
Pour rediriger l'utilisateur en fonction de son privilege, ajoutez les
lignes suivantes
aux endroits indiqués
Dans la zone d'affichage admin :
header("Location:URL SI ADMIN")
Dans la zone d'affichage admin :
header("Location:URL SI USER SIMPLE")
Note: pour ajouter des privilèges, editez ce fichier en rajoutant une
condition d'affichage
et editez le fichier admin.php en ajoutant à la liste "select" un
privilege.
*/
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
42
// si l'utilisateur est connecté comme admin ...
if($_SESSION['privilege'] == "admin") { // Affichage conditionnel : si et seulement si l'utilisateur est connecté avec le privilege administrateur ?>
<strong><u>En tant qu'administrateur vous pouvez effectuer les actions suivantes : </u></strong></p>
<p class="Style4">- <a href="admin.php">Gérer les utilisateurs</a> <?php } // fin de l'affichage conditionnel?>
</p>
<p>
<?php
// si l'utilisateur est connecté comme simple utilisateur ...
if($_SESSION['privilege'] == "user") { // Affichage conditionnel : si et seulement si
l'utilisateur est connecté avec le privilege utilisateur simple ?>
<strong><u>En tant qu'utilisateur simple vous ne pouvez pas effectuer d'actions</u></strong> <?php } // fin de l'affichage conditionnel?>
</p>
<p align="center"><a href="index.php?erreur=logout"><strong>Vous déconnecter </strong></a></p>
</body>
</html>
Admin.php
<?php session_start(); // On relaye la session
require_once('connexion.php'); if (session_is_registered("authentification") && $_SESSION['privilegeUtilisateur'] == "admin"
){ // vérification sur la session authentification (la session est elle
enregistrée ?)
// On vérifie également si la session ouverte est bien une session admin et
on place ici les
éventuelles actions en cas de réussite de la connexion
}
elseif (session_is_registered("authentification") && $_SESSION['privilegeUtilisateur'] ==
"user") {
}
else { header("Location:index.php?erreur=intru"); // redirection en cas d'echec
}
// ------ AJOUT D'UN Utilisateur --------
if(isset($_POST['loginUtilisateur'])){ // on vérifie la présence des variables de formulaire
(si le formulaire a été envoyé)
if(($_POST['loginUtilisateur'] == "") || ($_POST['passwordUtilisateur'] == "")){ // si
login ou mot de passe non spécifiés >> message d'erreur
header("Location:admin.php?erreur=empty");
}
else if($_POST['passwordUtilisateur'] == $_POST['passwordUtilisateur2']){ // on vérifie
si le mot de passe et le mot de passe confirmé ont la même valeur
// on passe toutes les variables $POST en variables
$loginUtilisateur = $_POST['loginUtilisateur'];
$passwordUtilisateur = md5($_POST['passwordUtilisateur']); // ici, on
crypte le mot
de passe à l'aide de MD5 (c'est tout simple non ? :)
$nomUtilisateur = $_POST['nomUtilisateur'];
$prenomUtilisateur = $_POST['prenomUtilisateur'];
$privilegeUtilisateur = $_POST['privilegeUtilisateur'];
// on fait l'INSERT dans la base de données
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
43
$add_user = sprintf("INSERT INTO Utilisateur
(loginUtilisateur, passwordUtilisateur, nomUtilisateur, prenomUtilisateur,
privilegeUtilisateur)
VALUES ('$loginUtilisateur', '$passwordUtilisateur', '$nomUtilisateur', ' $prenomUtilisateur', '$privilegeUtilisateur')"); mysql_select_db($database_dbprotect, $dbprotect);
$result = mysql_query($add_user, $dbprotect) or die(mysql_error()); header("Location:admin.php?add=ok"); // redirection si création réussie
}
else{ header("Location:admin.php?erreur=pass"); // redirection si le pass1 est
différent
du pass2
}
}
// ------ SUPPRESSION D'UN Utilisateur --------
// on fait la requête sur tous les Utilisateur de la base pour alimenter
notre sélecteur (on
fait un tri par nom)
mysql_select_db($database_dbprotect, $dbprotect);
$query_users = "SELECT * FROM Utilisateur ORDER BY nomUtilisateur ASC"; //
ORDER BY renvoi
les données triées (ici par nom croissant)
$users = mysql_query($query_users, $dbprotect) or die(mysql_error()); $row_users = mysql_fetch_assoc($users);
if(isset($_POST['suppr']) && ($_POST['suppr'] != "1")){ // on vérifie la présence des
variables de formulaire (si le formulaire a été envoyé)
$id = $_POST['suppr'];
$delete_user = sprintf("DELETE FROM Utilisateur WHERE
codeUtilisateur='$id'"); mysql_select_db($database_dbprotect, $dbprotect);
$result = mysql_query($delete_user, $dbprotect) or die(mysql_error()); header("Location:admin.php?delete=ok"); // url qui servira pour afficher le
message de
réussite
}
?>
<html>
<head>
<title>ADMINISTRATION - LSgroup</title> <link href="styles.css" rel="stylesheet" type="text/css"> <link rel="shortcut icon" type="image/x-icon" href="image/LSgroup.png" /> </head>
<body>
<center>
<a href="index.php"> <IMG WIDTH="170px" SRC="image/LSgroup.png" title="Accueil" BORDER=0 /> </a>
</center>
<FORM ACTION='rechercheform.php' align = "left"> <input type="submit" name="submit9" value="Effectuer une Recherche"> </FORM>
<!-- MENU -->
<div id="menu"> <ul>
<li><a>Utiliateur</a> <ul class="sousMenu"> <li><a href="listeutilisateur.php">Liste</a></li> <?php if (session_is_registered("authentification") && $_SESSION[ 'privilegeUtilisateur'] == "admin"){ ?>
<li><a href="ajoututilisateur.php">Ajouter</a></li> <?php } ?> </ul>
</li>
<li><a>Poste</a> <ul class="sousMenu"> <li><a href="listeposte.php">Liste</a></li> <?php if (session_is_registered("authentification") && $_SESSION[ 'privilegeUtilisateur'] == "admin"){ ?>
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
44
<li><a href="ajoutposte.php">Ajouter</a></li> <?php } ?> </ul>
</li>
<li><a>Imprimante</a> <ul class="sousMenu"> <li><a href="listeimprimante.php">Liste</a></li> <?php if (session_is_registered("authentification") && $_SESSION[ 'privilegeUtilisateur'] == "admin"){ ?>
<li><a href="ajoutimprimante.php">Ajouter</a></li> <?php } ?> </ul>
</li>
<li><a>Salle</a> <ul class="sousMenu"> <li><a href="listesalle.php">Liste</a></li> <?php if (session_is_registered("authentification") && $_SESSION[ 'privilegeUtilisateur'] == "admin"){ ?>
<li><a href="ajoutsalle.php">Ajouter</a></li> <?php } ?> </ul>
</li>
<li><a>Ecran</a> <ul class="sousMenu"> <li><a href="listeecran.php">Liste</a></li> <?php if (session_is_registered("authentification") && $_SESSION[ 'privilegeUtilisateur'] == "admin"){ ?>
<li><a href="ajoutecran.php">Ajouter</a></li> <?php } ?> </ul>
</li>
</ul>
</div>
<!-- FIN MENU -->
<form action="" method="post" name="add"> <?php if (session_is_registered("authentification") && $_SESSION['privilegeUtilisateur'] ==
"admin"){ ?>
<div class="titre" overflow="scroll">- : : : ESPACE ADMINISTRATION : : : -</div> <?php } ?>
<BR/>
<BR/>
<BR/>
<BR/>
<BR/>
<BR/>
<BR/>
<BR/>
<BR/>
<BR/>
<BR/>
<BR/>
<BR/>
<BR/>
<BR/>
<BR/>
<BR/>
<BR/>
<BR/>
<BR/>
<center>
<p><a href="index.php"><strong>< Retour accueil</strong></a></p></center> </form>
</body>
</html>
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
45
Ajoutposte.php
<?php session_start(); // On relaye la session
require_once('connexion.php'); if (session_is_registered("authentification") && $_SESSION['privilegeUtilisateur'] == "admin"
){ // vérification sur la session authentification (la session est elle
enregistrée ?)
// On vérifie également si la session ouverte est bien une session admin et
on place ici les
éventuelles actions en cas de réussite de la connexion
}
else { header("Location:index.php?erreur=intru"); // redirection en cas d'echec
}
// ------ AJOUT D'UN Poste --------
if(isset($_POST['nommagePoste'])){ // on vérifie la présence des variables de formulaire (si
le formulaire a été envoyé)
if(($_POST['nommagePoste'] == "") || ($_POST['numeroSeriePoste'] == "")){ // si login ou
mot de passe non spécifiés >> message d'erreur
header("Location:ajoutposte.php?erreur=empty");
}
else{ // on passe toutes les variables $POST en variables
$nommagePoste = $_POST['nommagePoste'];
$modelePoste = $_POST['modelePoste'];
$numeroSeriePoste = $_POST['numeroSeriePoste'];
$memoirePoste = $_POST['memoirePoste'];
$disqueposte = $_POST['disqueposte'];
$systemePoste = $_POST['systemePoste'];
$commentairePoste = $_POST['commentairePoste'];
$debutGarantiePoste = $_POST['debutGarantiePoste'];
$finGarantiePoste = $_POST['finGarantiePoste'];
$codeUtilisateur = $_POST['codeUtilisateur'];
$codeSwitch = $_POST['codeSwitch'];
$codeSalle = $_POST['codeSalle'];
// on fait l'INSERT dans la base de données
$add_poste = sprintf("INSERT INTO Poste
(nommagePoste, modelePoste, numeroSeriePoste, memoirePoste, disqueposte,
systemePoste, commentairePoste, debutGarantiePoste, finGarantiePoste,
codeUtilisateur,
codeSwitch, codeSalle)
VALUES ('$nommagePoste', '$modelePoste', '$numeroSeriePoste', '$memoirePoste', ' $disqueposte', '$systemePoste', '$commentairePoste', '$debutGarantiePoste', '
$finGarantiePoste', '$codeUtilisateur', '$codeSwitch', '$codeSalle')"); mysql_select_db($database_dbprotect, $dbprotect);
$result = mysql_query($add_poste, $dbprotect) or die(mysql_error()); header("Location:ajoutposte.php?add=ok"); // redirection si création
réussie
}
}
// ------ SUPPRESSION D'UN Poste --------
// on fait la requête sur tous les Postes de la base pour alimenter notre
sélecteur (on fait
un tri par nom)
mysql_select_db($database_dbprotect, $dbprotect);
$query_postes = "SELECT * FROM Poste ORDER BY nommagePoste ASC"; // ORDER
BY renvoi les
données triées (ici par nom croissant)
$postes = mysql_query($query_postes, $dbprotect) or die(mysql_error()); $row_postes = mysql_fetch_assoc($postes);
if(isset($_POST['suppr']) && ($_POST['suppr'] != "1")){ // on vérifie la présence des
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
46
variables de formulaire (si le formulaire a été envoyé)
$id = $_POST['suppr'];
$delete_poste = sprintf("DELETE FROM Poste WHERE codePoste='$id'"); mysql_select_db($database_dbprotect, $dbprotect);
$result = mysql_query($delete_poste, $dbprotect) or die(mysql_error()); header("Location:suppressionposte.php?delete=ok"); // url qui servira pour
afficher le
message de réussite
}
?>
<html>
<head>
<title>ADMINISTRATION --> AJOUT POSTE - LSgroup</title> <link href="styles.css" rel="stylesheet" type="text/css"> <link rel="shortcut icon" type="image/x-icon" href="image/LSgroup.png" /> </head>
<body>
<center>
<a href="index.php"> <IMG WIDTH="170px" SRC="image/LSgroup.png" title="Accueil" BORDER=0 /> </a>
</center>
<!-- MENU -->
<div id="menu"> <ul>
<li><a>Utiliateur</a> <ul class="sousMenu"> <li><a href="listeutilisateur.php">Liste</a></li> <li><a href="ajoututilisateur.php">Ajouter</a></li> </ul>
</li>
<li><a>Poste</a> <ul class="sousMenu"> <li><a href="listeposte.php">Liste</a></li> <li><a href="ajoutposte.php">Ajouter</a></li> </ul>
</li>
<li><a>Imprimante</a> <ul class="sousMenu"> <li><a href="listeimprimante.php">Liste</a></li> <li><a href="ajoutimprimante.php">Ajouter</a></li> </ul>
</li>
<li><a>Salle</a> <ul class="sousMenu"> <li><a href="listesalle.php">Liste</a></li> <li><a href="ajoutsalle.php">Ajouter</a></li> </ul>
</li>
<li><a>Ecran</a> <ul class="sousMenu"> <li><a href="listeecran.php">Liste</a></li> <li><a href="ajoutecran.php">Ajouter</a></li> </ul>
</li>
</ul>
</div>
<!-- FIN MENU -->
<form action="" method="post" name="add"> <div class="titre">- : : : ESPACE ADMINISTRATION : : : -</div> <p align="center"> <?php if(isset($_GET['add']) && ($_GET['add'] == "ok")) { // Affiche l'erreur ?>
<span class="reussite">Le Poste a été créé avec succès !</span> <?php } ?>
<?php if(isset($_GET['erreur']) && ($_GET['erreur'] == "empty")) { // Affiche l'erreur ?>
<span class="erreur">Un petit oublis non ? Veuillez renseigner au moins un nommage de
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
47
poste</span> <?php } ?>
</p>
<p align="center"><strong><u>Créer un Poste</u></strong></p> <table width="320" border="0" align="center" cellpadding="5" cellspacing="0" bgcolor= "#eeeeee" class="tableaux"> <tr>
<td width="40">nommage du Poste </td> <td width="144"><div align="center"><input name="nommagePoste" type="text" id=
"nommagePoste"></div></td> </tr>
<tr>
<td>modele du Poste </td> <td><div align="center"><input name="modelePoste" type="text" id="modelePoste" ></div></td>
</tr>
<tr>
<td>numéro de série </td> <td><div align="center"><input name="numeroSeriePoste" type="text" id= "numeroSeriePoste"></div></td> </tr>
<tr>
<td>mémoire (Mo) </td> <td><div align="center"><input name="memoirePoste" type="text" id="memoirePoste" ></div></td>
</tr>
<tr>
<td>taille du disque dur (Go) </td> <td><div align="center"><input name="disqueposte" type="text" id="disqueposte" ></div></td>
</tr>
<tr>
<td>le système</td> <td><div align="center"><select name="systemePoste" id="systemePoste"> <option value=""></option> <option value="--windows--">--windows--</option> <option value="XP"> XP </option> <option value="autrew"> autre </option> <option value="--linux--">--linux--</option> <option value="UBUNTU"> UBUNTU </option> <option value="debian"> DEBIAN </option> <option value="autrel"> autre </option> </select></div></td>
</tr>
<tr>
<td>Début de garantie </td> <td><div align="center"><input name="debutGarantiePoste" type="date" id= "debutGarantiePoste" value="AAAA-MM-JJ"></div></td> </tr>
<tr>
<td>Fin de garantie </td> <td><div align="center"><input name="finGarantiePoste" type="date" id= "finGarantiePoste" value="AAAA-MM-JJ"></div></td> </tr>
<tr>
<td>Utilisateur du Poste </td> <td><div align="center"> <table width="250" border="0" align="center" cellpadding="5" cellspacing="0"> <tr>
<td width="240"><div align="center"> <select name="codeUtilisateur" size="1" id="select1"> <?php
$sql2="SELECT * FROM Utilisateur";
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
48
$listeU=mysql_query($sql2);
while($ligneU=mysql_fetch_array($listeU)) {
extract($ligneU);
echo "<option value='$codeUtilisateur'>$nomUtilisateur $prenomUtilisateur</option>"; }
?>
</select>
<input name="verif" type="hidden" id="verif"> </div></td>
</tr></table>
</div></td>
</tr>
<tr>
<td>Switch reliant le Poste </td> <td><div align="center"> <table width="250" border="0" align="center" cellpadding="5" cellspacing="0"> <tr>
<td width="240"><div align="center"> <select name="codeSwitch" size="1" id="select3"> <?php
$sql4="SELECT * FROM Switch";
$listeT=mysql_query($sql4);
while($ligneT=mysql_fetch_array($listeT)) {
extract($ligneT);
echo "<option value='$codeSwitch'>$nommageSwitch </option>";
}
?>
</select>
<input name="verif" type="hidden" id="verif"> </div></td>
</tr></table>
</div></td>
</tr>
<tr>
<td>Salle </td> <td><div align="center"> <table width="250" border="0" align="center" cellpadding="5" cellspacing="0"> <tr>
<td width="240"><div align="center"> <select name="codeSalle" size="1" id="select2"> <?php
$sql3="SELECT * FROM Salle";
$listeS=mysql_query($sql3);
while($ligneS=mysql_fetch_array($listeS)) {
extract($ligneS);
echo "<option value='$codeSalle'>$nommageSalle</option>"; }
?>
</select>
<input name="verif" type="hidden" id="verif"> </div></td>
</tr></table>
</div></td>
</tr>
<tr>
<td>Commentaire </td> <td><div align="center"><TEXTAREA name="commentairePoste" type="text" id= "commentairePoste" cols="30" rows="5" value=" "></TEXTAREA></div></td> </tr>
<tr>
<td height="50" colspan="2"><div align="center">
<input type="submit" name="Submit" value="Créer ce Poste">
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
49
</div></td>
</tr>
</table>
</form>
<p align="center"><strong> <div align="center"> <table width="350" border="0" align="center" cellpadding="5" cellspacing="0" class= "tableaux"> <tr>
<td width="240"><div align="center"> <select name="liste" size="15" id="select2"> <?php
do { ?>
<option value="<?php echo $row_postes['codeposte']?>"> <?php echo $row_postes['nommagePoste'] ?> </option>
<?php
} while ($row_postes = mysql_fetch_assoc($postes)); $rows = mysql_num_rows($postes);
if($rows > 0) { mysql_data_seek($postes, 0);
$row_postes = mysql_fetch_assoc($postes);
}
?>
</select>
<input name="verif" type="hidden" id="verif"> </div></td>
</tr>
</table>
<p><a href="index.php"><strong>< Retour accueil</strong></a></p> </div>
</form>
</body>
</html>
Bonjour.php
<?php session_start(); // On relaye la session
require_once('connexion.php'); if (session_is_registered("authentification") && $_SESSION['privilegeUtilisateur'] == "admin"
){ // vérification sur la session authentification (la session est-elle
enregistrée ?)
// On vérifie également si la session ouverte est bien une session admin et
on place ici les
éventuelles actions en cas de réussite de la connexion
}
else { header("Location:index.php?erreur=intru"); // redirection en cas d'echec
}
?>
<HTML>
<HEAD>
<TITLE>Bienvenue</TITLE> <link href="styles.css" rel="stylesheet" type="text/css"> <link rel="shortcut icon" type="image/x-icon" href="image/LSgroup.png" /> </HEAD>
<BODY>
<center>
<a href="index.php"> <IMG WIDTH="170px" SRC="image/LSgroup.png" title="Accueil" BORDER=0 /> </a>
</center>
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
50
<CENTER>
<H1>Bienvenue dans l'intranet de LSgroup.</H1> <BR />
<BR />
<BR />
<a href=admin.php>Administration </a>
<BR />
<BR />
<BR />
<BR />
<BR />
<BR />
<BR />
<BR />
<BR />
<BR />
<BR />
<BR />
<BR />
<BR />
<p><a href="index.php"><strong>< Retour accueil</strong></a></p></center> </BODY>
</HTML>
Connexion.php
<?php
/*
-----------------------------------
------ SCRIPT LS GROUP -------
-----------------------------------
*/
// Paramètres de connexion
$hostname_dbprotect = "localhost"; // nom ou ip de votre serveur
$database_dbprotect = "base_EVO"; // nom de votre base de données
$username_dbprotect = "root"; // nom d'utilisateur (root par défaut) !!!
ATTENTION, en
utilisant root, vos visiteurs on tout les droits sur la base
$password_dbprotect = "azerty"; // mot de passe (aucun par défaut mais il
est fortement
recommandé d'en mettre un ... sinon, à quoi bon la sécurité ?)
$dbprotect = mysql_pconnect($hostname_dbprotect, $username_dbprotect,
$password_dbprotect) or trigger_error(mysql_error(),E_USER_ERROR); ?>
Detailposte.php
<?php session_start(); // On relaye la session
require_once('connexion.php'); if (session_is_registered("authentification") && $_SESSION['privilegeUtilisateur'] == "admin"
){ // vérification sur la session authentification (la session est elle
enregisTRée ?)
// On vérifie également si la session ouverte est bien une session admin et
on place ici les
éventuelles actions en cas de réussite de la connexion
}
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
51
elseif (session_is_registered("authentification") && $_SESSION['privilegeUtilisateur'] ==
"user") {
}
else { header("Location:index.php?erreur=intru"); // redirection en cas d'echec
}
?>
<html>
<head>
<title>ADMINISTRATION -->DETAILS POSTE - LSgroup</title> <link href="styles.css" rel="stylesheet" type="text/css"> <link rel="shortcut icon" type="image/x-icon" href="image/LSgroup.png" /> </head>
<body>
<center>
<a href="index.php"> <IMG WIDTH="170px" SRC="image/LSgroup.png" title="Accueil" BORDER=0 /> </a>
</center>
<!-- MENU -->
<div id="menu"> <ul>
<li><a>Utiliateur</a> <ul class="sousMenu"> <li><a href="listeutilisateur.php">Liste</a></li> <?php if (session_is_registered("authentification") && $_SESSION[ 'privilegeUtilisateur'] == "admin"){ ?> <!--si l'utilisateur existe et
qu'il est admin, on
affiche -->
<li><a href="ajoututilisateur.php">Ajouter</a></li> <?php } ?> </ul>
</li>
<li><a>Poste</a> <ul class="sousMenu"> <li><a href="listeposte.php">Liste</a></li> <?php if (session_is_registered("authentification") && $_SESSION[ 'privilegeUtilisateur'] == "admin"){ ?> <!--si l'utilisateur existe et
qu'il est admin, on
affiche -->
<li><a href="ajoutposte.php">Ajouter</a></li> <?php } ?> </ul>
</li>
<li><a>Imprimante</a> <ul class="sousMenu"> <li><a href="listeimprimante.php">Liste</a></li> <?php if (session_is_registered("authentification") && $_SESSION[ 'privilegeUtilisateur'] == "admin"){ ?> <!--si l'utilisateur existe et
qu'il est admin, on
affiche -->
<li><a href="ajoutimprimante.php">Ajouter</a></li> <?php } ?> </ul>
</li>
<li><a>Salle</a> <ul class="sousMenu"> <li><a href="listesalle.php">Liste</a></li> <?php if (session_is_registered("authentification") && $_SESSION[ 'privilegeUtilisateur'] == "admin"){ ?> <!--si l'utilisateur existe et
qu'il est admin, on
affiche -->
<li><a href="ajoutsalle.php">Ajouter</a></li> <?php } ?> </ul>
</li>
<li><a>Ecran</a> <ul class="sousMenu"> <li><a href="listeecran.php">Liste</a></li> <?php if (session_is_registered("authentification") && $_SESSION[ 'privilegeUtilisateur'] == "admin"){ ?> <!--si l'utilisateur existe et
qu'il est admin, on
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
52
affiche -->
<li><a href="ajoutecran.php">Ajouter</a></li> <?php } ?> </ul>
</li>
</ul>
</div>
<!-- FIN MENU -->
<form name='modification' action='listeposte.php<?php if($_GET['action']=="modif") { echo "?action=modif&codePoste=".$_GET['code']; } ?>' method='post'> <p align="center"><font color="#0099CC"><strong><u>Détail du Poste</u></strong></font><BR /><BR />
<table width="" border="0" cellpadding="5" cellspacing="2" class="tableaux" align=
"center"> <?php
//requête pour récupérer les champs de la base Poste et Utilisateur.
$sql2="SELECT *
FROM Poste,Utilisateur,Salle,Switch
WHERE Utilisateur.codeUtilisateur=Poste.codeUtilisateur
AND Salle.codeSalle=Poste.codeSalle
AND Switch.codeSwitch=Poste.codeSwitch
AND codePoste='".$_GET['code']."'";
$paquet2=mysql_query($sql2) or die(mysql_error()); $ligne2=mysql_fetch_array($paquet2);
extract($ligne2);
echo " <TR>
<TD><div align='center'> Nommage du Poste :</div></TD>
<TD><div align='center'> $nommagePoste</div></TD> </TR><TR>
<TD><div align='center'> Modèle du Poste :</div></TD>
<TD><div align='center'> $modelePoste</div></TD> </TR><TR>
<TD><div align='center'> Numéro de série du Poste :</div></TD>
<TD><div align='center'> $numeroSeriePoste</div></TD> </TR><TR>
<TD><div align='center'> Mémoire du Poste :</div></TD>
<TD><div align='center'> $memoirePoste</div></TD> </TR><TR>
<TD><div align='center'> Disque dur du Poste :</div></TD>
<TD><div align='center'> $disqueposte</div></TD> </TR><TR>
<TD><div align='center'> Système du Poste :</div></TD>
<TD><div align='center'> $systemePoste</div></TD> </TR><TR>
<TD><div align='center'> Début de garantie :</div></TD>
<TD><div align='center'> $debutGarantiePoste</div></TD> </TR><TR>
<TD><div align='center'> Fin de garantie :</div></TD>
<TD><div align='center'> $finGarantiePoste</div></TD> </TR><TR>
<TD><div align='center'> Utilisateur du Poste :</div></TD>
<TD><div align='center'> $nomUtilisateur $prenomUtilisateur</div></TD> </TR><TR>
<TD><div align='center'> Switch reliant le Poste :</div></TD>
<TD><div align='center'> $nommageSwitch</div></TD> </TR><TR>
<TD><div align='center'> Salle :</div></TD>
<TD><div align='center'> $nommageSalle</div></TD> </TR><TR>
<TD><div align='center'> Commentaire du Poste :</div></TD>
<TD><div align='center'> $commentairePoste</div></TD> </TR>";
?>
</table>
<BR /><BR />
<a href="listeposte.php"><strong><<< Retour</strong></a>
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
53
<BR /><BR />
<a href="index.php"><strong>< Retour accueil</strong></a> </p>
</form>
</body>
</html>
Index.php
<?php require_once('connexion.php'); /*
-----------------------------------
------ SCRIPT LS GROUP -------
-----------------------------------
*/
session_start(); // début de session
if (isset($_POST['loginUtilisateur'])){ // execution uniquement apres envoi du formulaire
(test si la variable POST existe)
$loginUtilisateur = addslashes($_POST['loginUtilisateur']); // mise en
variable du nom
d'utilisateur
$passwordUtilisateur = addslashes(md5($_POST['passwordUtilisateur'])); //
mise en
variable du mot de passe chiffré à l'aide de md5 (I love md5)
// requete sur la table administrateurs (on récupère les infos de la
personne)
mysql_select_db($database_dbprotect, $dbprotect);
$verif_query=sprintf("SELECT * FROM Utilisateur WHERE
loginUtilisateur='$loginUtilisateur' AND passwordUtilisateur='$passwordUtilisateur'"); // requête sur la base administrateurs
$verif = mysql_query($verif_query, $dbprotect) or die(mysql_error()); $row_verif = mysql_fetch_assoc($verif);
$Utilisateur = mysql_num_rows($verif);
if ($Utilisateur) { // On test s'il y a un utilisateur correspondant session_register("authentification"); // enregistrement de la session
// déclaration des variables de session
$_SESSION['nomUtilisateur'] = $row_verif['nomUtilisateur']; // Son nom
$_SESSION['prenomUtilisateur'] = $row_verif['prenomUtilisateur']; // Son
Prénom
$_SESSION['loginUtilisateur'] = $row_verif['loginUtilisateur']; // Son
Login
$_SESSION['passwordUtilisateur'] = $row_verif['passwordUtilisateur']; //
Son mot de
passe (à éviter)
$_SESSION['privilegeUtilisateur'] = $row_verif['privilegeUtilisateur']; //
le
privilège de l'utilisateur (permet de définir des niveaux d'utilisateur)
header("location:admin.php"); // redirection si OK
}
else { header("Location:index.php?erreur=loginUtilisateur"); // redirection si
utilisateur
non reconnu
}
}
// Gestion de la déconnexion
if(isset($_GET['erreur']) && $_GET['erreur'] == 'logout'){ // Test sur les paramètres d'URL
qui permettront d'identifier un contexte de déconnexion
$prenomUtilisateur = $_SESSION['prenomUtilisateur']; // On garde le prénom
en variable
pour dire au revoir (soyons polis :-)
session_unset("authentification");
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
54
header("Location:index.php?erreur=delog&prenomUtilisateur=$prenomUtilisateur"); }
?>
<html>
<head>
<title>AUTHENTIFICATION - LSgroup</title> <link href="styles.css" rel="stylesheet" type="text/css"> <link rel="shortcut icon" type="image/x-icon" href="image/LSgroup.png" /> </head>
<body>
<center>
<a href="index.php"> <IMG WIDTH="170px" SRC="image/LSgroup.png" title="Accueil" BORDER=0 /> </a>
</center>
<form action="" method="post" name="connect"> <p align="center" class="titre"><strong>- : : : INTRANET LS - group : : : - </strong></p>
<p align="center" class="title"> <?php if(isset($_GET['erreur']) && ($_GET['erreur'] == "loginUtilisateur")) { //
Affiche l'erreur ?>
<strong class="erreur">Echec d'authentification !!! > login ou mot de passe incorrect</strong> <?php } ?>
<?php if(isset($_GET['erreur']) && ($_GET['erreur'] == "delog")) { // Affiche
l'erreur ?>
<strong class="reussite">Déconnexion réussie... A bientôt <?php echo $_GET['prenomUtilisateur'];?> !</strong> <?php } ?>
<?php if(isset($_GET['erreur']) && ($_GET['erreur'] == "intru")) { // Affiche
l'erreur ?>
<strong class="erreur">Echec d'authentification !!! > Aucune session n'est ouverte ou vous n'avez pas les droits pour afficher cette page</strong> <?php } ?>
</p>
<p align="center"><u>Authentification :</u><br> <p align="center"><font color="#0099CC"><strong>Bienvenue sur l'intranet de LS-Group >></strong></p> <br>
<table width="300" border="0" align="center" cellpadding="10" cellspacing="0" bgcolor="#eeeeee" class="tableaux"> <tr>
<td width="50%""><div align="right">login</div></td> <td width="50%"><input name="loginUtilisateur" type="text" id= "loginUtilisateur" AUTOCOMPLETE="OFF" ></td> </tr>
<tr>
<td width="50%""><div align="right">mot de passe</div></td> <td width="50%"><input name="passwordUtilisateur" type="password" id= "passwordUtilisateur" AUTOCOMPLETE="OFF" ></td> </tr>
<tr>
<td height="34" colspan="2"><div align="center"> <input type="submit" name="Submit" value="Se connecter"> </td>
</tr>
</table>
<BR />
<BR />
<p align="center"><a href="index.php" title="Accueil">< Accueil</a></p> </form>
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
55
</body>
</html>
Listeposte.php
<?php session_start(); // On relaye la session
require_once('connexion.php'); if (session_is_registered("authentification") && $_SESSION['privilegeUtilisateur'] ==
"admin"){ // vérification sur la session authentification (la session est
elle enregisTRée ?)
// On vérifie également si la session ouverte est bien une session admin et
on place ici
les éventuelles actions en cas de réussite de la connexion
}
elseif (session_is_registered("authentification") && $_SESSION['privilegeUtilisateur'] ==
"user") {
}
else { header("Location:index.php?erreur=inTRu"); // redirection en cas d'echec
}
// ------ MODIFICATION D'UN Poste --------
if ($_GET['action'] == "modif") {
//on passe toutes les variables $POST en variables
$codePoste = $_GET['codePoste'];
$nommagePoste = $_POST['nommagePoste'];
$modelePoste = $_POST['modelePoste'];
$numeroSeriePoste = $_POST['numeroSeriePoste'];
$memoirePoste = $_POST['memoirePoste'];
$disqueposte = $_POST['disqueposte'];
$systemePoste = $_POST['systemePoste'];
$commentairePoste = $_POST['commentairePoste'];
$debutGarantiePoste = $_POST['debutGarantiePoste'];
$finGarantiePoste = $_POST['finGarantiePoste'];
$codeUtilisateur = $_POST['codeUtilisateur'];
$codeSwitch = $_POST['codeSwitch'];
$codeSalle = $_POST['codeSalle'];
// on fait la modif dans la base de données
$modif_poste = "UPDATE Poste
SET nommagePoste = '$nommagePoste', modelePoste = '$modelePoste', numeroSeriePoste = '$numeroSeriePoste', memoirePoste = '$memoirePoste', disqueposte = '$disqueposte', systemePoste = '$systemePoste', debutGarantiePoste = '$debutGarantiePoste', finGarantiePoste = '$finGarantiePoste', commentairePoste = '$commentairePoste', codeUtilisateur = '$codeUtilisateur', codeSwitch = '$codeSwitch', codeSalle = '$codeSalle' WHERE codePoste = '$codePoste' " ; mysql_select_db($database_dbprotect, $dbprotect);
$result = mysql_query($modif_poste, $dbprotect) or die(mysql_error()); }
// ------ SUPPRESSION D'UN Poste --------
// on fait la requête sur tous les Postes de la base pour alimenter notre
sélecteur (on fait
un tri par nom)
mysql_select_db($database_dbprotect, $dbprotect);
if ($_GET['action'] == "suppr") {
$result = "DELETE FROM Poste WHERE codePoste=$_GET[code]";
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
56
mysql_query ($result, $dbprotect);
}
?>
<html>
<head>
<title>ADMINISTRATION --> LISTE POSTES - LSgroup</title> <link href="styles.css" rel="stylesheet" type="text/css"> <link rel="shortcut icon" type="image/x-icon" href="image/LSgroup.png" /> </head>
<body>
<center>
<a href="index.php"> <IMG WIDTH="170px" SRC="image/LSgroup.png" title="Accueil" BORDER=0 /> </a>
</center>
<!-- MENU -->
<div id="menu"> <ul>
<li><a>Utiliateur</a> <ul class="sousMenu"> <li><a href="listeutilisateur.php">Liste</a></li> <?php if (session_is_registered("authentification") && $_SESSION[ 'privilegeUtilisateur'] == "admin"){ ?> <!--si l'utilisateur existe et
qu'il est admin, on
affiche -->
<li><a href="ajoututilisateur.php">Ajouter</a></li> <?php } ?> </ul>
</li>
<li><a>Poste</a> <ul class="sousMenu"> <li><a href="listeposte.php">Liste</a></li> <?php if (session_is_registered("authentification") && $_SESSION[ 'privilegeUtilisateur'] == "admin"){ ?> <!--si l'utilisateur existe et
qu'il est admin, on
affiche -->
<li><a href="ajoutposte.php">Ajouter</a></li> <?php } ?> </ul>
</li>
<li><a>Imprimante</a> <ul class="sousMenu"> <li><a href="listeimprimante.php">Liste</a></li> <?php if (session_is_registered("authentification") && $_SESSION[ 'privilegeUtilisateur'] == "admin"){ ?> <!--si l'utilisateur existe et
qu'il est admin, on
affiche -->
<li><a href="ajoutimprimante.php">Ajouter</a></li> <?php } ?> </ul>
</li>
<li><a>Salle</a> <ul class="sousMenu"> <li><a href="listesalle.php">Liste</a></li> <?php if (session_is_registered("authentification") && $_SESSION[ 'privilegeUtilisateur'] == "admin"){ ?> <!--si l'utilisateur existe et
qu'il est admin, on
affiche -->
<li><a href="ajoutsalle.php">Ajouter</a></li> <?php } ?> </ul>
</li>
<li><a>Ecran</a> <ul class="sousMenu"> <li><a href="listeecran.php">Liste</a></li> <?php if (session_is_registered("authentification") && $_SESSION[ 'privilegeUtilisateur'] == "admin"){ ?> <!--si l'utilisateur existe et
qu'il est admin, on
affiche -->
<li><a href="ajoutecran.php">Ajouter</a></li> <?php } ?> </ul>
</li>
</ul>
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
57
</div>
<!-- FIN MENU -->
<p align="center"><strong> <?php
if(isset($_GET['action']) && ($_GET['action'] == "modif")) { // Affiche l'erreur ?>
<span class="reussite">Le Poste a été modifié avec succès</span> <?php } ?>
<?php
if(isset($_GET['action']) && ($_GET['action'] == "suppr")) { // Affiche l'erreur ?>
<span class="reussite">Le Poste a été supprimé avec succès</span> <?php } ?>
</strong></p>
<form action="" method="post" name="code"> <?php if (session_is_registered("authentification") && $_SESSION['privilegeUtilisateur']
== "admin"){ ?>
<div class="titre" overflow="scroll">- : : : ESPACE ADMINISTRATION : : : -</div> <?php } ?>
<p align="center"><font color="#0099CC"><strong><u>Liste des Postes</u></strong></font></p> <div align="center"> <table width="180" border="0" cellpadding="5" cellspacing="0" class="tableaux" align= "center"> <?php if (session_is_registered("authentification") && $_SESSION['privilegeUtilisateur']
== "admin"){ echo "<TH></TH><TH></TH><TH></TH>"; } ?> <TH>Nommage postes</TH> <tr></tr>
<?php
$sql="SELECT * FROM Poste ORDER BY nommagePoste ASC";
$paquet=mysql_query($sql);
while($ligne=mysql_fetch_array($paquet)) {
extract($ligne);
// les icones
if (session_is_registered("authentification") && $_SESSION['privilegeUtilisateur'
] == "admin"){
echo "<TR> <TD><div align='center'><A HREF='modificationposte.php?code=$codePoste &action=modif'>
<IMG SRC='image/crayon.png' BORDER='0' alt='modifier' title='modifier'/>
</A></div>
</TD>"; }
if (session_is_registered("authentification") && $_SESSION['privilegeUtilisateur'
] == "admin"){
echo" <TD><div align='center'><A
HREF='listeposte.php?code=$codePoste&action=suppr'> <IMG SRC='image/corbeille.png' BORDER='0' alt='supprimer'
title='supprimer'/>
</A></div>
</TD>"; }
if (session_is_registered("authentification") && $_SESSION['privilegeUtilisateur'
] == "admin"){
echo " <TD><div align='center'><A
HREF='detailposte.php?code=$codePoste&action=detail'> <IMG SRC='image/loupe.png' BORDER='0' alt='détail' title='détail'/>
</A></div>
</TD>"; }
// les valeurs
echo "<TD><div align='center'> $nommagePoste</div></TD> </TR>";
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
58
}
?>
</table>
<p><a href="index.php"><strong>< Retour accueil</strong></a></p> </div>
</form>
</body>
</html>
Modificationposte.php
<?php session_start(); // On relaye la session
require_once('connexion.php'); if (session_is_registered("authentification") && $_SESSION['privilegeUtilisateur'] == "admin"
){ // vérification sur la session authentification (la session est elle
enregisTRée ?)
// On vérifie également si la session ouverte est bien une session admin et
on place ici les
éventuelles actions en cas de réussite de la connexion
}
else { header("Location:index.php?erreur=intru"); // redirection en cas d'echec
}
?>
<html>
<head>
<title>ADMINISTRATION --> MODIFICATION POSTES - LSgroup</title> <link href="styles.css" rel="stylesheet" type="text/css"> <link rel="shortcut icon" type="image/x-icon" href="image/LSgroup.png" /> </head>
<body>
<center>
<a href="index.php"> <IMG WIDTH="170px" SRC="image/LSgroup.png" title="Accueil" BORDER=0 /> </a>
</center>
<!-- MENU -->
<div id="menu"> <ul>
<li><a>Utiliateur</a> <ul class="sousMenu"> <li><a href="listeutilisateur.php">Liste</a></li> <li><a href="ajoututilisateur.php">Ajouter</a></li> </ul>
</li>
<li><a>Poste</a> <ul class="sousMenu"> <li><a href="listeposte.php">Liste</a></li> <li><a href="ajoutposte.php">Ajouter</a></li> </ul>
</li>
<li><a>Imprimante</a> <ul class="sousMenu"> <li><a href="listeimprimante.php">Liste</a></li> <li><a href="ajoutimprimante.php">Ajouter</a></li> </ul>
</li>
<li><a>Salle</a> <ul class="sousMenu"> <li><a href="listesalle.php">Liste</a></li> <li><a href="ajoutsalle.php">Ajouter</a></li> </ul>
</li>
<li><a>Ecran</a>
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
59
<ul class="sousMenu"> <li><a href="listeecran.php">Liste</a></li> <li><a href="ajoutecran.php">Ajouter</a></li> </ul>
</li>
</ul>
</div>
<!-- FIN MENU -->
<p align="center"><strong> <?php
if(isset($_GET['modif']) && ($_GET['modif'] == "ok")) { // Affiche l'erreur ?>
<span class="reussite">Le Poste a été modifié avec succès</span> <?php } ?>
</strong></p>
<form name='modification' action='listeposte.php<?php if($_GET['action']=="modif") { echo "?action=modif&codePoste=".$_GET['code']; } ?>' method='post'> <div class="titre">- : : : ESPACE ADMINISTRATION : : : -</div> <p align="center"><font color="#0099CC"><strong><u>Modifier un Poste</u></strong></font><BR /><BR />
<?php
$sql="SELECT * FROM Poste WHERE codePoste='".$_GET['code']."'";
$paquet=mysql_query($sql);
$ligne=mysql_fetch_array($paquet);
extract($ligne);
?>
Nommage poste :<BR /> <input name='nommagePoste' type=text value=<?php if($_GET[action]=='modif') {
echo $nommagePoste; }?>><BR /> Modèle du poste :<BR /> <input name='modelePoste' type=text value=<?php if($_GET[action]=='modif') { echo $modelePoste; }?>><BR />
Numéro de série :<BR /> <input name='numeroSeriePoste' type=text value=<?php if($_GET[action]=='modif') { echo $numeroSeriePoste; }?>><BR /> Mémoire du poste :<BR /> <input name='memoirePoste' type=text value=<?php if($_GET[action]=='modif') {
echo $memoirePoste; }?>><BR /> Disque (Mo):<BR /> <input name='disqueposte' type=text value=<?php if($_GET[action]=='modif') { echo $disqueposte; }?>><BR />
Systeme du poste :<BR /> <select name='systemePoste' id='systemePoste'> <option value='' <?php if($systemePoste=="") echo "SELECTED";?>></option> <option value='--windows--' <?php if($systemePoste=="--windows--") echo "SELECTED";?>>--windows--</option> <option value='XP' <?php if($systemePoste=="XP") echo "SELECTED";?>> XP </option>
<option value='autre' <?php if($systemePoste=="autre") echo "SELECTED";?>> autre </option> <option value='--linux--' <?php if($systemePoste=="--linux--") echo "SELECTED";?>>--linux--</option> <option value='UBUNTU' <?php if($systemePoste=="UBUNTU") echo "SELECTED";?>>
UBUNTU </option> <option value='debian' <?php if($systemePoste=="debian") echo "SELECTED";?>>
DEBIAN </option> <option value='autrel' <?php if($systemePoste=="autre1") echo "SELECTED";?>>
autre </option> </select><BR />
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
60
Début de garantie :<BR /> <input name='debutGarantiePoste' type=date value=<?php if($_GET[action]=='modif') { echo $debutGarantiePoste; }?>><BR /> Fin de garantie :<BR /> <input name='finGarantiePoste' type=date value=<?php if($_GET[action]=='modif') { echo $finGarantiePoste; }?>><BR /> Utilisateur du Poste :<BR /> <table width="250" border="0" align="center" cellpadding="5" cellspacing="0"> <tr>
<td width="240"><div align="center"> <select name="codeUtilisateur" size="1" id="select1"> <?php
$sql2="SELECT * FROM Utilisateur";
$codeUtilisateurPoste=$codeUtilisateur;
$listeU=mysql_query($sql2);
while($ligneU=mysql_fetch_array($listeU)) {
extract($ligneU);
echo "<option value='$codeUtilisateur'"; if($codeUtilisateur==$codeUtilisateurPoste) echo " SELECTED "; echo ">$nomUtilisateur $prenomUtilisateur</option>"; }
?>
</select>
<input name="verif" type="hidden" id="verif"> </div></td>
</tr>
</table>
Switch :<BR /> <table width="250" border="0" align="center" cellpadding="5" cellspacing="0"> <tr>
<td width="240"><div align="center"> <select name="codeSwitch" size="1" id="select3"> <?php
$sql4="SELECT * FROM Switch";
$codeSwitchPoste=$codeSwitch;
$listeT=mysql_query($sql4);
while($ligneT=mysql_fetch_array($listeT)) {
extract($ligneT);
echo "<option value='$codeSwitch'"; if($codeSwitch==$codeSwitchPoste) echo " SELECTED"; echo ">$nommageSwitch</option>"; }
?>
</select>
<input name="verif" type="hidden" id="verif"> </div></td>
</tr>
</table>
Salle :<BR /> <table width="250" border="0" align="center" cellpadding="5" cellspacing="0"> <tr>
<td width="240"><div align="center"> <select name="codeSalle" size="1" id="select2"> <?php
$sql3="SELECT * FROM Salle";
$codeSallePoste=$codeSalle;
$listeS=mysql_query($sql3);
while($ligneS=mysql_fetch_array($listeS)) {
extract($ligneS);
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
61
echo "<option value='$codeSalle'"; if($codeSalle==$codeSallePoste) echo " SELECTED"; echo ">$nommageSalle</option>"; }
?>
</select>
<input name="verif" type="hidden" id="verif"> </div></td>
</tr>
</table>
Commentaire :<BR /> <textarea name='commentairePoste' cols=35 rows=6><?php if($_GET[action]=='modif') { echo $commentairePoste; }?></textarea><BR /> <input type=submit name="submit3" value=" Modifier "><BR /><BR /> <a href="listeposte.php"><strong><<< Retour</strong></a><BR /><BR />
<a href="index.php"><strong>< Retour accueil</strong></a> </p>
</form>
</body>
</html>
Rechercheform.php
<?php session_start(); // On relaye la session
require_once('connexion.php'); if (session_is_registered("authentification") && $_SESSION['privilegeUtilisateur'] ==
"admin"){ // vérification sur la session authentification (la session est
elle enregisTRée ?)
// On vérifie également si la session ouverte est bien une session admin et
on place ici
les éventuelles actions en cas de réussite de la connexion
}
elseif (session_is_registered("authentification") && $_SESSION['privilegeUtilisateur'] ==
"user") {
}
else { header("Location:index.php?erreur=intru"); // redirection en cas d'echec
}
?>
<HTML>
<HEAD>
<TITLE>Recherche multi-critère</TITLE><link href="styles.css" rel="stylesheet" type= "text/css"> <link rel="shortcut icon" type="image/x-icon" href="image/LSgroup.png" /> </head>
<body>
<center>
<a href="index.php"> <IMG WIDTH="170px" SRC="image/LSgroup.png" title="Accueil" BORDER=0 /> </a>
</center><BR /><BR /><BR />
<!-- MENU -->
<div id="menu"> <ul>
<li><a>Utiliateur</a> <ul class="sousMenu"> <li><a href="listeutilisateur.php">Liste</a></li> <?php if (session_is_registered("authentification") && $_SESSION[
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
62
'privilegeUtilisateur'] == "admin"){ ?> <!--si l'utilisateur existe et
qu'il est admin, on
affiche -->
<li><a href="ajoututilisateur.php">Ajouter</a></li> <?php } ?>
</ul>
</li>
<li><a>Poste</a> <ul class="sousMenu"> <li><a href="listeposte.php">Liste</a></li> <?php if (session_is_registered("authentification") && $_SESSION[ 'privilegeUtilisateur'] == "admin"){ ?> <!--si l'utilisateur existe et
qu'il est admin, on
affiche -->
<li><a href="ajoutposte.php">Ajouter</a></li> <?php } ?> </ul>
</li>
<li><a>Imprimante</a> <ul class="sousMenu"> <li><a href="listeimprimante.php">Liste</a></li> <?php if (session_is_registered("authentification") && $_SESSION[ 'privilegeUtilisateur'] == "admin"){ ?> <!--si l'utilisateur existe et
qu'il est admin, on
affiche -->
<li><a href="ajoutimprimante.php">Ajouter</a></li> <?php } ?> </ul>
</li>
<li><a>Salle</a> <ul class="sousMenu"> <li><a href="listesalle.php">Liste</a></li> <?php if (session_is_registered("authentification") && $_SESSION[ 'privilegeUtilisateur'] == "admin"){ ?> <!--si l'utilisateur existe et
qu'il est admin, on
affiche -->
<li><a href="ajoutsalle.php">Ajouter</a></li> <?php } ?> </ul>
</li>
<li><a>Ecran</a> <ul class="sousMenu"> <li><a href="listeecran.php">Liste</a></li> <?php if (session_is_registered("authentification") && $_SESSION[ 'privilegeUtilisateur'] == "admin"){ ?> <!--si l'utilisateur existe et
qu'il est admin, on
affiche -->
<li><a href="ajoutecran.php">Ajouter</a></li> <?php } ?> </ul>
</li>
</ul>
</div>
<!-- FIN MENU -->
<?php if (session_is_registered("authentification") && $_SESSION[ 'privilegeUtilisateur'] == "admin"){ ?>
<div class="titre" overflow="scroll">- : : : ESPACE ADMINISTRATION : : : -</div>
<?php } ?>
<p align="center"><font color="#0099CC"><strong><u>Recherche </u></strong></font></p><BR /><BR />
<FORM ACTION='rechercheresult.php' METHOD='POST'> <TABLE width="" border="0" cellpadding="5" cellspacing="2" class="tableaux" align
="center"> <TR></TR>
<TR>
<TD>Utilisateur / Poste / Salle :</TD> <TD><INPUT TYPE='TEXT' NAME='texte' autocomplete="off" ></TD>
</TR>
<TR>
<TD height="50" colspan="2"><div align="center">
ANGLADE Ludovic FESNEAU Soni
Projet Evolution – Cesi 2010 – GMSI 28
63
<input type="submit" value="Rechercher"> </div></TD>
</TR>
</TABLE>
</FORM>
<FORM ACTION='rechercheresult2.php' METHOD='POST'> <TABLE width="" border="0" cellpadding="5" cellspacing="2" class="tableaux" align="center"> <TR>
<TD>Utiliasteur :</TD> <TD><INPUT TYPE='TEXT' NAME='bUtilisateur' autocomplete="off" ></TD> </TR>
<TR>
<TD>Poste :</TD> <TD><INPUT TYPE='TEXT' NAME='bPoste' autocomplete="off" ></TD> </TR>
<TR>
<TD>Salle :</TD> <TD><INPUT TYPE='TEXT' NAME='bsalle' autocomplete="off" ></TD> </TR>
<TR>
<TD></TD>
<TD><INPUT TYPE='SUBMIT' VALUE='Rechercher'></TD> </TR>
</TABLE>
</FORM>
</BODY>
</HTML>