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

IUT de Provence, site dArles Rue Raoul Follereau (Route de Crau) 13200 Arles

RAPPORT DE STAGE

Boyer Julien
Informatique 2me anne Promotion 2004 - 2006

Stage effectu du 11 avril au 17 juin la DSIT dArles

DSIT Place de la Rpublique 13200 Arles.

Tuteur de stage lIUT : Tuteur de stage dans lentreprise :

M. Romain Raffin M. Franois Raynaud

Dpartement Informatique

Boyer Julien

DSIT

Remerciements

Je tiens remercier Mr Franois Raynaud pour mavoir permis deffectuer ce stage au sein de son service ainsi que pour ses conseils et le temps quil ma accord. Ensuite, je souhaite exprimer ma gratitude toute lquipe de la DSIT ainsi que les quatre autres stagiaires prsents lors de mon stage avec qui jai pass un agrable moment tout au long du stage. Je remercie galement Mr Romain Raffin mon tuteur, Mr Reboulet, responsable des stages et Youssef Chikhaoui, responsable des secondes annes de DUT informatique ainsi que tous les professeurs de lIUT dArles.

-2-

Dpartement Informatique

Boyer Julien

DSIT

Le contenu et les opinions de ce mmoire nengagent que leur auteur et ne sauraient en aucun cas tre considrs comme crits sous une autre

responsabilit.

-3-

Dpartement Informatique

Boyer Julien

DSIT

Introduction ................................................................................................................................ 5 English Introduction ................................................................................................................... 6 1 Contexte .................................................................................................................................. 7 1.1 Prsentation de lentreprise .............................................................................................. 7 1.2 Organigramme du service ................................................................................................ 8 1.3 Contraintes de dveloppement ......................................................................................... 8 1.4 Le stage ............................................................................................................................ 9 1.4.1 Le sujet .......................................................................................................................... 9 1.4.2 Le projet ........................................................................................................................ 9 2 la demande et lexistant......................................................................................................... 10 2.1 La demande .................................................................................................................... 10 2.2 Description du systme actuel........................................................................................ 10 3 Description du travail ralis................................................................................................. 10 3.1 Mise en place de l'environnement de travail .................................................................. 10 3.2 La comprhension des classes open Mairie ................................................................... 11 3.3 La comprhension de l'architecture d'un site open Mairie. ............................................ 11 3.4 Prise en main du code existant ....................................................................................... 11 3.5 Ajout des fonctionnalits l'application ........................................................................ 12 4 Les classes open Mairie......................................................................................................... 12 4.1 La classe dbForm ........................................................................................................... 13 4.2 La classe Formulaire ...................................................................................................... 13 4.3 La classe tab ................................................................................................................... 14 5 Prsentation de lapplication ................................................................................................. 14 5.1 Cas dutilisation.............................................................................................................. 14 5.1.1 Saisie de courrier ..................................................................................................... 14 5.1.2 Modification ............................................................................................................ 15 5.1.3 Suppression ............................................................................................................. 16 5.1.4 Recherche ................................................................................................................ 16 5.2 Architecture et explication de lapplication ................................................................... 17 5.2.1 Affichage d'un formulaire ....................................................................................... 17 5.2.2 Affichage d'un sous formulaire ............................................................................... 18 5.2.3 Recherche de courriers ............................................................................................ 19 6 Activits annexes................................................................................................................... 20 7 Problmes rencontrs ............................................................................................................ 20 8 Conclusion............................................................................................................................. 21 Glossaire................................................................................................................................... 22 Bibliographie ............................................................................................................................ 23 Annexes .................................................................................................................................... 24

-4-

Dpartement Informatique

Boyer Julien

DSIT

Introduction
Ce stage de 10 semaines (du 10 avril au 16 juin) vient clturer la formation en DUT informatique option imagerie numrique. Jai effectu mon stage la mairie dArles et plus prcisment la DSIT qui est le service informatique. Le but de mon stage tait dapporter de nouvelles fonctionnalits au logiciel open courrier qui sert la gestion du courrier ; en effet une administration telle que la mairie dArles recevant plusieurs centaines de courriers par jour implique la ncessit den informatiser la gestion. Dans un premier temps, je me suis familiaris avec les classes open Mairie partir desquelles open courrier a t cre. Ensuite, jai du dvelopper un moteur de recherche permettant de rechercher parmi tous les courriers saisis selon plusieurs critres laisss au choix de lutilisateur. Enfin, la dernire partie consistait grer la diffusion dun courrier en permettant la cration de sous formulaires rattachs un courrier.

-5-

Dpartement Informatique

Boyer Julien

DSIT

English Introduction
My placement in the DSIT started on April 10th 2006 and lasted for 10 week until June 15th 2006. Its goal was to give me a first professional experience and is an essential part of the DUT in computer science formation. The DSIT is the computing department of the town of Arles. This department had developed many open source applications in the object oriented language PHP. During this period of time, I had to implement new functionalities in the mail management software open courrier. This placement provided me a great experience within an experienced team.

-6-

Dpartement Informatique

Boyer Julien

DSIT

1 Contexte
1.1 Prsentation de lentreprise
Jai fait mon stage la Direction des Systmes Informatiques et Tlcommunications. Ce service a t cre en 1997 et est compose de 5 services : Administration ; Dveloppement ; Rseau et tlcommunications ; Bureautique ; Administration systme.

Au total, ce sont 14 employs qui sont rpartis dans ces services. Jai pour ma part effectu mon stage au sein du service dveloppement. La DSIT est lorigine des composants open Mairie. A partir de ces composants, plusieurs applications ont t dveloppes ou sont encore en cours de dveloppement comme par exemple openElec qui sert la gestion des listes lectorales, openCimetire utilis comme son nom lindique dans la gestion des cimetires ainsi que des applications de gestion de parcs informatiques, de stocks, de demandes de logements, Les composants open Marie et les diffrents logiciels dvelopps partir de ceux-ci sont open source et sont tlchargeables sur le GFORGE de lADULLACT Ladhsion de la DSIT lADULLACT ainsi que sa collaboration avec des socits de services telles que atReal elle aussi implique dans le dveloppement de logiciels open sources montrent sa volont de sinvestir dans le domaine du logiciel libre.

-7-

Dpartement Informatique

Boyer Julien

DSIT

1.2 Organigramme du service


Annexe I

1.3 Contraintes de dveloppement


Les applications sont bases sur un composant dvelopp par la DSIT baptis open Mairie. Open Mairie, crit en PHP objet, permet la cration dapplications bases sur des formulaires, sous formulaires, daffichage sous forme tabulaire et ldition au format PDF du contenu de la base de donnes. Afin dadapter les possibilits du composant une application spcifique, la surcharge de mthodes est ncessaire. Lapplication que jai dvelopp devait fonctionner sous la version 4 de PHP et pour ce faire jai du utiliser les classes mres open Mairie. Il ma aussi t demand dutiliser easyphp version 1.7. En ce qui concerne la gestion des diffrents SGBD pouvant tre utiliss de paire avec les applications drives dopen Mairie, lutilisation du connecteur open source DBPear tait impose. Ce connecteur est un ensemble de classes crites en PHP permettant de faire abstraction du SGBD utilis en proposant un ensemble de mthodes sadaptant nimporte quel SGBD.

-8-

Dpartement Informatique

Boyer Julien

DSIT

La base de donnes est de type MySql, mais lapllication doit permettre dutiliser dautres SGBD ; pour ce faire, il suffit de mettre au point un fichier spcifique au SGBD utilis. La mairie dArles tant adhrente lADULLACT, et cette dernire a mis en place un systme de GFORGE accessible par lintermdiaire dun logiciel de type CVS (Tortoise par exemple). Enfin, lapplication devait fonctionner sous Internet Explorer et Mozilla Firefox, ces deux navigateurs tant les plus rpandus.

1.4 Le stage
Ce stage doit tre effectue dans le cadre de lobtention du Dut informatique. Dune dure de dix semaines, il a pour but dapporter une exprience professionnelle ayant pour but une mise en pratique des acquis au cours des deux annes que comprends la formation et aussi de faciliter linsertion dans le milieu professionnel.

1.4.1 Le sujet
Le sujet de mon stage tait dapporter de nouvelles fonctionnalits au logiciel existant open Courrier version 1.0 dvelopp en PHP afin quil corresponde mieux aux attentes des utilisateurs.

1.4.2 Le projet
Le projet que javait ralis peut tre dcoup en deux parties : La premire consistait dvelopper un moteur de recherche permettant la recherche dun ou plusieurs enregistrements dans la table courrier selon plusieurs critres. La seconde partie portait sur la mise en place dun sous formulaire servant la diffusion du courrier.

-9-

Dpartement Informatique

Boyer Julien

DSIT

2 la demande et lexistant
2.1 La demande
Le service du courrier de la mairie dArles utilisait auparavant le logiciel open courrier dans sa version 1.0. Cette version ne proposait pas de fonction de recherche avance; en effet il tait seulement possible de rechercher une chane sur lensemble des champs dune table. Actuellement, la base de donnes contenant plus de 40 000 enregistrement, ce type de recherche savrait tre peu efficace. De plus, certains courriers reus donnent lieu une diffusion au sein dun service; cette diffusion partir dun courrier tait impossible dans la version prcdente. Les modifications apporter au logiciel taient donc de dvelopper un moteur de recherche multi critres au niveau de la table courrier et la cration dun sous formulaire permettant laffectation de tches suite la rception dun courrier.

2.2 Description du systme actuel


Le service du courrier de la mairie dArles emploie trois personnes charges de saisir les diffrents courriers reus. Elles utilisent lapplication open courrier version 1.0 pour saisir les courriers reus dans la journe. Une fois un courrier saisi, une personne est charge de distribuer ce courrier aux services ou personnes concernes. Cette mme personne est aussi charge de rcuprer les diffrents courriers destins soit un autre service soit lextrieur de la mairie.

3 Description du travail ralis


3.1 Mise en place de l'environnement de travail
La premire tche laquelle je me suis attel tait de mettre en place l'environnement de travail dans lequel jallais devoir voluer. Dans un premier temps, j'ai du installer easy php version 1.7 et l'installer. Une fois l'application installe, j'ai eu la paramtrer; cest dire lui indiquer o se trouvaient les librairies requises; c'est pourquoi dans un deuxime temps j'ai du tlcharger les librairies ncessaires au dveloppement de l'application savoir :

DB Pear, le connecteur de bases de donnes; Open Mairie; - 10 -

Dpartement Informatique

Boyer Julien

DSIT

Fpdf.

Restait ensuite 'inclure leurs chemins d'accs dans le fichier php.ini se trouvant dans le rpertoire apache de easyphp (un redmarrage des serveurs est ncessaire pour prendre en compte les changements). Enfin, l'utilisation du logiciel CVS Tortoise tant de rigueur, j'ai du le tlcharger dans sa version la plus rcente (v 1.8.25) et l'installer. Une fois Tortoise install et un compte ouvert mon nom sur le GFORGE de lADULLACT par Mr Raynaud, l'administrateur des logiciels open Mairie, il m'tait alors possible de mettre jour mon travail et de le rcuprer a tout moment au niveau de ce serveur.

3.2 La comprhension des classes open Mairie


Ce ft un travail assez difficile; en effet, open Mairie est compos de sept classes abstraites (la plus courte comporte 248 lignes et la plus longue en fait 961) qui sont malheureusement peu commentes. J'ai principalement utilis trois de ces classes qui seront prsentes dans le chapitre suivant. Une documentation proposant une prsentation de chaque classe et des mthodes qui y sont rattaches est consultable en ligne sur le site de open Mairie dont le lien est propos dans la bibliographie. De plus, un document de prise en main labor par un autre stagiaire tait aussi disponible sur le site. Malgr le fait que j'ai eu assez de mal comprendre le fonctionnement des classes open Mairie, toute l'quipe charge du dveloppement m'a fourni une aide prcieuse

3.3 La comprhension de l'architecture d'un site open Mairie.


Paralllement la comprhension des classes open Mairie, j'ai du comprendre la faon dont est cre un site a l'aide des classes open Mairie. Outre la surcharge des mthodes des classes mres, une application base sur open Mairie fait appel au moins 3 fichiers spars pour crer un affichage de formulaire ou sous forme de tableau.

3.4 Prise en main du code existant


Dans le but de comprendre plus rapidement le code, jai pass mes premiers jours effectuer des recherches sur Internet propos des fonctions PHP utilises qui mtaient inconnues. Jai par la suite commenc toucher au code en amliorant sensiblement la fonction de recherche prexistante en permettant de slectionner via un champ select (choix multiple) le champ sur lequel on souhaitait effectuer la recherche.

- 11 -

Dpartement Informatique

Boyer Julien

DSIT

Bien que cette modification ft terme remplac par un vritable moteur de recherche, elle ma permis de faire mes premires surcharges des fonctions de open Mairie et par la mme occasion dvoluer dans la comprhension du code.

3.5 Ajout des fonctionnalits l'application


Une fois le code et l'architecture compris, jai commenc par corriger quelques problmes que javais reprs au niveau de lapplication existante comme implmenter une gestion des dates au niveau dun formulaire ou permettre lajout de courrier la chane. Ensuite, je me suis mit ajouter les fonctionnalits demandes c'est dire dvelopper un moteur de recherche et permettre la diffusion du courrier. Le dveloppement du moteur de recherche sest droule en trois parties : La cration de linterface o les donnes recherches seront saisies; La surcharge de la classe tab de open Mairie ; Ladaptation du fichier faisant le lien entre la saisie et laffichage des donnes.

Ensuite, la mise en place des sous formulaire peut tre dcompose de la manire suivante : Cration de la table tche ; Implmentation de laffichage tabulaire des sous formulaires rattachs un courrier ; Modification de la table service. Cration du sous formulaire.

4 Les classes open Mairie


Cette partie va nous permettre daborder trois des classes open Mairie que jai le plus utilis afin de mener bien le projet. La comprhension de ces classes est fondamentale dans la mise en uvre du projet et correspond la premire tche laquelle je me suis attel. Lensemble des classes open Mairie est compos de mthodes abstraites, il est donc souvent ncessaire de les surcharger afin de les adapter aux besoins de lapplication. Les classes et les mthodes qui les composent prsentes ci-dessous sont celles qui mont t le plus utiles lors de la mise en uvre du projet. Il est noter que je ne traiterais pas de DB Pear ni de fpdf tant donn que je l'ai implicitement utilis; ses mthodes tant appeles au niveau des fonctions de open Mairie.

- 12 -

Dpartement Informatique

Boyer Julien

DSIT

4.1 La classe dbForm


Cette classe sert la cration et la gestion de linterface entre lutilisateur et la base de donnes. Lensemble des mthodes qui la constitue est donc orient vers la construction des donnes du formulaire et la manipulation des donnes au niveau de la base : Les fonctions ajouter modifier supprimer ($val,&$db,$DEBUG) : Ces fonctions permettent de manipuler directement la base de donne via lutilisation de fonctions du connecteur DBPEAR. Les donnes qui seront traites au niveau de la base sont reprsentes par $val ; Le dernier paramtre sert afficher des informations complmentaires utiles pour dbugger lapplication.

Dautres mthodes sont consacres la cration du formulaire faisant office dintermdiaire entre lutilisateur et la base et permettent entre autre la cration de champs de saisie, laffectation dun libell un champ, le groupement de plusieurs champs : Settype : sert dfinir le type de champ; Setval : affecte une valeur par dfaut un objet ; Setlib : permet dafficher un libell correspondant un champ; Settaille : sert affecter une taille un champ; Setmax : permet de dfinir le nombre de lignes dun champ; Setselect : sert affecter les diffrentes valeurs un champ select; SetOnchange : effectue des contrles lors des changements de valeurs; SetGroupe : regroupe plusieurs champs.

Toutes ces fonctions prennent en paramtre ladresse dun formulaire et un entier servant indiquer quel type de traitement on souhaite raliser (ajout, suppression, mise a jour). Les fonctions portants le mme nom de la classe formulaire sont appeles grce ladresse du formulaire. Cette classe dispose galement dune fonction retour qui permet de faire le lien entre laffichage du formulaire et laffichage de la base.

4.2 La classe Formulaire


Cette classe est appele au niveau de la fonction formulaire de dbForm. Le formulaire est cre en fonction des valeurs passes par les diffrentes mthodes de dbForm. On y retrouve les fonctions Settype, Setval, Setlib, Settaille, Setmax, Setselect, SetOnchange et Setgroupe qui sont appeles par les fonctions ponymes de dbForm. Chacune de ces fonctions prends en paramtre un champ et une valeur affecter ce champ. - 13 -

Dpartement Informatique

Boyer Julien

DSIT

Un autre ensemble de fonctions est disponible. Ces fonctions ont pour but la cration des champs au niveau du formulaire : Hiddenstatic : cre un champ non modifiable ; date : fait apparatre un champ de saisie de date; select : permet de crer un champ choix multiple; comboG : affiche le champ droite au niveau du formulaire; comboD : affiche le champ a gauche au niveau du formulaire; upload : ouvre un slecteur de fichier; hidden : champ non modifiable.

Toutes ces fonctions prennent en paramtres le nom du champ et crent un champ de type souhait.

4.3 La classe tab


Cette classe permet de prsenter le contenu dune table de la base en crant un affichage sous forme de tableau. Le tableau est compos de lentte, du corps du tableau, dune entte propre chaque colonne, de boutons servant a naviguer entre les diffrentes pages du tableau. A ceci vient sajouter une fonction qui cre la requte pour slectionner les diffrents lments que lon souhaite afficher. Lentte du tableau est cre par la fonction entte et par dfaut affiche un champ permettant une recherche sur la table concerne. Le corps du tableau est gnr par la fonction afficher dont les paramtres sont les suivants : ($premier,$recherche,$href,$db,$DEBUG). On a donc un affichage cre avec $premier comme premier lment, la chane recherche $recherche passe en paramtre, le tableau de liens href correspondants aux icnes et la connexion la base. Cette fonction appelle la mthode requte qui va slectionner les lments a afficher. Enfin viennent les fonctions de pagination qui permettent la navigation entre les diffrentes pages du tableau.

5 Prsentation de lapplication
5.1 Cas dutilisation
5.1.1 Saisie de courrier
Le service reoit un courrier; - 14 -

Dpartement Informatique

Boyer Julien

DSIT

Lutilisateur lance la saisie, la modification ou la suppression de courrier; Le Formulaire est cre et adapt la saisie de courrier; Lutilisateur renseigne les champs du formulaire et valide; En cas derreur, un message saffiche; Le courrier est ajout dans la base; Lutilisateur ajoute un nouveau courrier ou revient sur laffichage de la table.

Annexe II

5.1.2 Modification
Ce cas est quasiment similaire la saisie, la diffrence rside dans le fait que les champs du formulaire seront automatiquement remplis en fonction du courrier que lon souhaite modifier. De plus, lors dune modification il est possible dditer des sous formulaires rattachs au courrier. Ces sous formulaires fonctionnent sur le mme principe que les formulaires.

- 15 -

Dpartement Informatique

Boyer Julien Annexe III

DSIT

5.1.3 Suppression
De mme, lors dune suppression, les champs seront automatiquement remplis mais il ne sera pas possible de les modifier ; le seul choix laiss lutilisateur est la confirmation de la suppression ou le retour vers laffichage de la table.

5.1.4 Recherche
Annexe IV

- 16 -

Dpartement Informatique

Boyer Julien

DSIT

5.2 Architecture et explication de lapplication


5.2.1 Affichage d'un formulaire
Un formulaire est obtenu en surchargeant les mthodes de la classe dbForm

Annexe V

On remarque sur ce schma que la cration d'un formulaire qui a lieu au niveau de form.php ncessite l'inclusion de trois autres fichiers :

La feuille de style ou CSS, elle contient les informations sur l'apparence de la page concerne; Objet.class, ce fichier contient les surcharges des fonctions de la classe open Mairie dbForm; c'est lui qui dfinit les types de champs qui vont apparatre, la possibilit ou non qu'auras l'utilisateur d'y entrer ou non des informations, il fait office de lien entre l'utilisateur et la base de donnes. Le fichier de paramtrage Objet.inc contient toute les informations relatives l'interaction avec la base de donnes telles que le paramtrage des requtes, les liens correspondants aux icnes, la prsence ou non de sous formulaires. Il est important de noter que chaque table de la base un fichier.inc correspondant et qu'ils sont propres au SGBD utilis.

Un exemple de formulaire est disponible en annexe VIII (8).

- 17 -

Dpartement Informatique

Boyer Julien

DSIT

5.2.2 Affichage d'un sous formulaire


Les sous formulaires sont accessibles lors de la modification dun courrier et sont prsents dans un tableau. Les fichiers appels lors de la cration dun sous formulaire sont les mme que prcdemment plus deux autres : tab.class et soustab.class. Dans le cas de la gestion du courrier, les sous formulaires reprsentent les tches relies un courrier cest pourquoi la table tche comprend un champ identifiant de courrier. Un courrier est donc rattach plusieurs sous formulaires qui seront affichs par lintermdiaire de soustab et la classe tab de open Mairie. De plus, ces sous formulaires devant permettre de grer la diffusion dun courrier au sein dun service, jai donc du modifier la table service en rajoutant un champ servicerattachement ; ce champ permet de dfinir quels services seront slectionnables lors de ldition du sous formulaire en fonction du service auquel est destin le courrier. Les structures des tables courriers et service sont disponibles en annexe XII Annexe VI

tab.class est une des classes open Mairie dcrite prcdemment. Soustab permet laffichage du tableau prsentant les sous formulaires rattachs au courrier en cours ddition.

Un exemple de sous tableau et de sous formulaire sont respectivement disponible en annexes IX (9) et X (10)

- 18 -

Dpartement Informatique

Boyer Julien

DSIT

5.2.3 Recherche de courriers


La recherche seffectue partir dune page dveloppe sans utiliser les classes open Mairie; en effet, le moteur de recherche tant spcifique au courrier, il ma t demand de crer linterface sans utiliser les classes open Mairie. Ce moteur de recherche comprend quatorze champs diffrents qui permettent deffectuer des recherches sur lintgralit de la table courrier. Quatre de ces champs sont remplis dynamiquement en fonction du contenu de la base, les autres sont de simples champs de saisie. Une fois que lutilisateur a valid ses choix, un fichier intermdiaire la saisie des donnes et laffichage va prparer laffichage. Enfin, la classe daffichage spcifique la recherche affiche le contenu de la base compte tenu des valeurs entres dans le moteur de recherche.

Annexe VII

On constate que pour effectuer une recherche, trois fichiers sont appels Linterface de la recherche dans laquelle lutilisateur va saisir les informations quil souhaite afficher ; Recherche.tab qui est une surcharge de la classe tab de open Mairie ; cest partir de ce fichier que sera cre laffichage ; Tab.php qui sert dintermdiaire entre les deux fichiers prcdents ; il rcupre les informations en provenance de linterface de la recherche et les transmet recherche.tab pour lui indiquer quels lments sont afficher.

Un exemple daffichage est disponible en annexe XI (11).

- 19 -

Dpartement Informatique

Boyer Julien

DSIT

6 Activits annexes
Au long du stage, en plus de lactivit de dveloppement laquelle jai t assign, jai eu le privilge de participer quelques activits supplmentaires. Tout dabord, jai accompagn Mr Nicolas Issart, chef du service administration systme au centre technique municipal o jai pu assister une ngociation tlphonique entre le directeur du dit service et le directeur dune socit. Ensuite, la priode de mon stage correspondait une priode de changement du coeur de rseau faisant suite un appel doffres. A cette occasion, jai eu le plaisir daccompagner au cours dune aprs midi Mr Abdelouahed Djamel, Agent dentretien au service tlphonie et rseau qui tait alors charg de faire migrer les cbles constituants la dorsale du rseau de la ville de 100Mbits/s vers du Gigabits/s en fibre optique. Jai ainsi pu mieux apprhender ltendue du rseau de la Ville. De plus, Mr Raynaud, mon tuteur ma invit assister une de ses nombreuses prsentations des logiciels open Mairie auprs dune collectivit qui tait intresse notamment par la gestion des lections, des cimetires et des stocks. Enfin, dans les derniers jours du stage jai entam la cration dun gnrateur automatique de fichiers CSS partir dune image avec Mr Jean-Louis Bastide, technicien chef affect au service dveloppement. Pour ce faire, nous avons utilis la librairie de traitement dimages intgre PHP baptise GD qui contient les mthodes de base ncessaires la manipulation dimages en 2D. Ce projet nest actuellement pas abouti.

7 Problmes rencontrs
Au cours du dveloppement de lapplication, jai rencontr plusieurs problmes. Pour commencer, comme dit prcdemment, mon premier problme ft comprendre le code existant ainsi que larchitecture de lapplication. Ensuite, dautres problmes se sont poss a cours du dveloppement tel que loption magic_quote de PHP ; cette option est activer ou non au niveau du fichier PHP.ini et a pour but de protger automatiquement les simples et doubles ctes dans un lien. Ayant cette option dsactive par dfaut, je nai pas pens grer le cas ou elle ltait ce qui a eu pour consquence un plantage de lapplication lorsque Mr Raynaud la teste sur sa machine. Troisimement, lapplication devait pouvoir tourner la fois sous Mozilla Firefox et Internet Explorer qui sont les deux navigateurs les plus utiliss. Ayant dvelopp exclusivement sous Firefox, jai eu quelques soucis lors de ladaptation Internet Explorer.

- 20 -

Dpartement Informatique

Boyer Julien

DSIT

Ensuite, lors du dveloppement du moteur de recherche je devais pouvoir conserver les paramtres reprsentants les choix de recherche de lutilisateur lors de la navigation entre les pages ; pour ce faire jai du transformer le tableau contenant les paramtres en utilisant rois fonctions diffrentes : une srialisation, un encodage au format url et une protection des quotes. De plus, il tait impossible de faire des requtes imbriques sous mysql, jai donc du passer par des jointures pour palier a ce problme. Concernant le gnrateur de fichiers CSS, PHP ntant pas adapt la manipulation dimages nous avons donc rencontr des problmes pour adapter les mthodes de la librairie GD au type de traitements que lon souhaitait raliser. Enfin, un problme moindre ft le log derreur de PHP qui est peu explicite, ce qui est problmatique au dbut.

8 Conclusion
Les fonctionnalits demandes ont t intgres lapplication. La ralisation de ce projet ma permis de travailler par moi-mme et ma surtout appris me conformer aux souhaits des utilisateurs ainsi qu la faon de travailler en entreprise. De plus, jai pu participer au dveloppement de logiciels libres, ce que je considre comme tant un privilge. Au final, jai vcu une trs bonne exprience loccasion stage aussi bien dans la faon de travailler que dans lambiance agrable qui rgnait.

- 21 -

Dpartement Informatique

Boyer Julien

DSIT

Glossaire
DSIT Direction des Services Informatiques et Tlcommunications. Cest le service informatique de la ville dArles. Open Mairie Ensemble de classes dveloppes en PHP ayant pour but de permettre de dvelopper rapidement des applications web. SGBD Signifie Systme de Gestion de Base de Donnes ; cest un ensemble de programmes destins assurer la gestion et laccs une base de donnes. DB PEAR PEAR signifie "PHP Extension and Application Repository, cest un ensemble de bibliothques organises sous forme de packages, le package DB est une couche dabstraction de base de donnes. CVS - Concurrent Version System. Les logiciels de type CVS servent grer les diffrentes versions dun programme. http://fr.wikipedia.org/wiki/CVS GFORGE - Gforge est une application libre d'aide au travail collaboratif, qui permet d'organiser et de faciliter le travail d'quipes de dveloppement sur des projets logiciels. C'est un outil idal qui permet le travail distribu entre plusieurs quipes rparties plusieurs endroits, tout en respectant les contraintes de flexibilit des dveloppeurs. Gforge intgre en un point uniques trois composants essentiels des outils de travail collaboratif : Outils de communication : forums web, listes de diffusion, systme de publication de nouvelles ; Outils de suivi : suivi de bogues et de correctifs, suivi de tickets de support, gestion de tches et de projets ; Outils de partage d'informations : gestionnaire de versions, bibliothque d'lments partags, gestionnaire de documentation, publication de fichiers.

Tous ces outils sont grs par une interface web, ce qui permet une utilisation simple sans ncessiter d'homognit des postes de travail. Ils sont galement activables et dsactivables volont, ce qui permet d'adapter le mode d'utilisation de Gforge au mode de travail existant. ADULLACT Association des Dveloppeurs et des Utilisateurs de Logiciel Libre pour lAdministration et les Collectivits Territoriales CSS Cascade Style Sheets, c'est un fichier qui contient les informations sur les couleurs utiliser, les polices de caractres, l'apparence des boutons, les types de bordures. Cette sparation de la prsentation du style et le contenu des documents ont pour but de simplifier ldition pour le web et la maintenance dun site. FPDF signifie Free PDF, il sagit dune classe PHP permettant de gnrer des PDF partir dun code PHP. - 22 -

Dpartement Informatique

Boyer Julien

DSIT

Bibliographie
Portail de open Mairie. http://www.openmairie.org/ Librairie Pear, le connecteur de base de donnes utilis dans le cadre du projet. http://pear.php.net/ GFORGE de lADULLACT. http://adullact.net/ Codes hexadcimaux de quelques couleurs, pour les feuilles de style. http://perso.orange.fr/jmpetit/dossiers/webmaster/couleurshexa.htm Aide sur les diffrentes balises HTML. http://www.laurent-bernat.com/html-balises.php3?quoi=recap_balises Aide sur le SQL http://sql.developpez.com/ Documentions sur les diffrentes fonctions PHP http://fr3.php.net/ Site daide en franais sur PHP http://www.phpfrance.com/ Forums daide sur PHP http://php.developpez.com/ http://www.developpez.net/forums/forumdisplay.php?f=25

- 23 -

Dpartement Informatique

Boyer Julien

DSIT

Annexes
Annexe VIII Exemple de formulaire

- 24 -

Dpartement Informatique

Boyer Julien

DSIT

Annexe IX Exemple de sous tableau

Annexe X Exemple de sous formulaire

- 25 -

Dpartement Informatique

Boyer Julien

DSIT

Annexe XI Exemple daffichage tabulaire

- 26 -

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