[[CREATION D UNE APPLICATION DE MAINTENANCE DE BASE DE DONNEES]]

Dimension: px
Commencer à balayer dès la page:

Download "[[CREATION D UNE APPLICATION DE MAINTENANCE DE BASE DE DONNEES]]"

Transcription

1 RABOT Sylvain Maitre de stage : M. Laurent Bordes Responsable technique : M. Ludovic Martin [[CREATION D UNE APPLICATION DE MAINTENANCE DE BASE DE DONNEES]] IUT DE BAYONNE DEPARTEMENT INFORMATIQUE Année

2 Remerciements M. Laurent Bordes pour m avoir accueilli dans son entreprise et m avoir fait confiance. M. Ludovic Martin pour ses idées et l aide technique qu il m a apportée. Mlle Aurélie Rivière pour ses conseils. Remerciement spécial à M. Yves «creatyves» Becau pour m avoir autorisé à utiliser une de ses photos pour la première page de ce rapport. Vous pouvez trouver toutes ses œuvres à l adresse suivante : NB : Je tiens à souligner qu il n est pas la peine de chercher de significations particulières à la présence de cette photo en couverture, il n y en a pas. Sa présence est seulement due au fait que c est une œuvre que j apprécie beaucoup. IUT DE BAYONNE DEPARTEMENT INFORMATIQUE 2

3 Sommaire Remerciements... 2 Introduction... 5 Présentation de l entreprise... 6 Présentation du service Digistal.com... 7 Architecture du service Digistal.com... 8 Architecture de la base de données du service Digistal But du stage Travail réalisé Spécification de l application Caractéristiques de l application Apache HTTPD 2.2.x PHP PostgreSQL MVC SMARTY xhtml Prototype & Script.aculo.us AJAX Architecture de l application Arborescence et contenu des dossiers Position de l application dans l architecture Digistal Fonctionnement de MVC dans l application Modules de l application XTYWYSTX GhostBuster Dédale Reuters DeviantHorse DBDump AJAX dans l application Conclusion IUT DE BAYONNE DEPARTEMENT INFORMATIQUE 3

4 Annexes Codes critiques Travaux annexes K afiles sql4array acurl Bibliographie Sites web IUT DE BAYONNE DEPARTEMENT INFORMATIQUE 4

5 Introduction Ce stage s inscrit dans le cadre de mon cursus universitaire au sein de l Institut Universitaire de Technologie de Bayonne dans le but de mettre en pratique les connaissances acquises lors des deux années passées dans cette institution et d obtenir le Diplôme Universitaire Technologique option génie Informatique. Aspirant plus tard à travailler dans le milieu de la conception de sites internet j ai choisi de postuler pour ce stage dans des entreprises liées à cette activité. C est ainsi que la société Dreamclic par le biais de fondateur et gérant, M. Laurent Bordes, m a accueilli durant la période allant du 2 avril au 8 juin La raison de ma présence en tant que stagiaire dans cette entreprise était la nécessité pour celle-ci de créer une application destinée à la maintenance d une base de données liée à un service proposé par cette société, Digistal.com. IUT DE BAYONNE DEPARTEMENT INFORMATIQUE 5

6 Présentation de l entreprise La société Dreamclic est une agence Internet fondée en 2001 par M. Laurent Bordes, domiciliée 19 rue Vauban à Bordeaux, qui propose des services de création de sites internet pour les entreprises et particuliers. Au moment de ma présence dans cette entreprise le personnel était composé de 5 employés et 2 stagiaires : Laurent Bordes : gérance, relations clients, photographie Ludovic Martin : développement Nina Mussaute : gestion commerciale Aurélie Rivière : conception graphique, relations client, photographie Ludivine Lenoir : développement, conception graphique Renaud Cousin : stagiaire conception graphique Ghislain Traulle : stagiaire marketing La société fournit principalement 2 types de prestations : la création de sites internet à la demande et des services plus ou moins automatisés gérés par des applications développées par l entreprise. Exemple de sites web réalisés par la société : geralddahan.com : site officiel de Gérald Dahan. volkswagen-bordeaux.com : Volkswagen Bordeaux. brienne-auto.fr : BMW Bordeaux. equisup.fr : portail communautaire dédié à l équitation. horseonweb.com : site web de petites annonces équines. Services proposés par Dreamclic : digistal.com : service de création de site web destiné aux éleveurs et marchands de chevaux. trustxchange.com : service de transmission de données via internet. screenit.fr : service de création, gestion et diffusion de contenus multimédia. IUT DE BAYONNE DEPARTEMENT INFORMATIQUE 6

7 Présentation du service Digistal.com M. Bordes étant issu du milieu de l équitation et cavalier lui-même, le service Digistal.com s inscrit dans l orientation qu a prise la société en s emparant d un marché à l époque vierge, à savoir, la création de sites web spécialisés dans l équitation. Digistal.com est un service qui permet aux éleveurs et marchands de chevaux d obtenir un site web clef en main spécialisé dans leur activité. Spécifications du service : Création d une charte graphique Hébergement et gestion du nom de domaine du site Gestion d un catalogue de chevaux accessible par tous depuis le site Gestions de divers types de documents (texte, photos, vidéos) à associer aux chevaux du catalogue Gestion de la généalogie des chevaux Grâce à ce service, les clients possèdent des sites web flexibles et facilement administrables sans nécessiter de connaissances informatiques qui leurs servent de vitrines pour leurs activités. IUT DE BAYONNE DEPARTEMENT INFORMATIQUE 7

8 Architecture du service Digistal.com Ce schéma à pour but de vous faire comprendre de quelle manière a été conçu Digistal mais ne reflète absolument pas l architecture physique du système. En effet les différentes entités présentes sur le schéma (sauf l internaute) pourraient être dans la réalité regroupées sur un seul et même serveur. J ai choisi ici de fragmenter ces différentes entités dans un but pédagogique. Voici un exemple de fonctionnement : L internaute se connecte au site situé sur le serveur Digistal #2. Le site lui renvoie la page d accueil. L internaute décide de consulter le catalogue du site (www.exempleharas.com/catalogue.html). Le serveur Digistal #2 envoie une requête au Kernel Digistal lui indiquant qu il souhaite la liste des chevaux contenus dans le catalogue. Le Kernel interroge la base de données en fonction de la requête du serveur du site. Le serveur SQL renvoie les données au Kernel. Le Kernel formate les données et les envoie au serveur du site. Le site reçoit les données du Kernel, les formate au format HTML et envoie la page à l internaute. IUT DE BAYONNE DEPARTEMENT INFORMATIQUE 8

9 Diagramme de séquence UML du fonctionnement des sites web Digistal Cette architecture permet que chaque site du service Digistal soit flexible et indépendant de manière à ce que toute modification sur un site n ait aucune répercussion sur les autres. Elle permet aussi d avoir des données centralisées ce qui est très intéressant surtout en ce qui concerne la généalogie des chevaux. Par exemple, prenons le cas où un cheval rentré sur le site Digistal #1 soit le père d un cheval sur le site Digistal #2. Dans cette situation, le propriétaire du site Digistal #2 n aura pas besoin de rentrer la généalogie du cheval du côté du père car il se peut qu elle existe déjà si le propriétaire du site Digistal #1 l a déjà rentrée. IUT DE BAYONNE DEPARTEMENT INFORMATIQUE 9

10 Architecture de la base de données du service Digistal IUT DE BAYONNE DEPARTEMENT INFORMATIQUE 10

11 But du stage La raison de ma présence en tant que stagiaire dans cette entreprise vient du fait de la dégradation progressive de la qualité des informations contenues dans la base de données de Digistal. A force d utilisation, il s est avéré que certains clients ont rentré des informations erronées ou bien déjà présentes dans cette base. M. Bordes et M. Martin m ont alors fait confiance pour réaliser une application de maintenance de la base de données Digistal permettant la détection et la suppression de ces informations non désirées. IUT DE BAYONNE DEPARTEMENT INFORMATIQUE 11

12 Travail réalisé Mon travail consistant à supprimer des informations d une base de données j ai décidé de nommer mon application XTYWYSTX qui est l acronyme de «X To Y With Y Smaller Than X» qui veut dire en français «de x à y avec y plus petit que x». Spécification de l application M. Martin, responsable technique, m a laissé carte blanche en ce qui concerne la réalisation de mon application, il a juste définit les fonctionnalités qu elle devait implémenter, à savoir : Détection et suppression des doublons présents dans la table «cheval» de la base de données. Faire en sorte que l intégrité référentielle de la base de données soit respectée. Détection des cycles dans la généalogie des chevaux. Gestion des auteurs de documents. J ai rajouté à mon initiative la fonctionnalité suivante : Détection des chevaux dont le sexe ne correspond pas à sa généalogie Caractéristiques de l application Voici la liste de tous les composants qui ont été nécessaire lors de la réalisation de mon application. Apache HTTPD 2.2.x HTTPD est un serveur internet gratuit et open source développé par la fondation Apache. C est a l heure actuelle le serveur web le plus utilisé dans le monde (source : Netcraft). C est lui qui va gérer les requêtes HTTP envoyées par les utilisateurs de XTYWYSTX. Statistiques d utilisation des différents serveurs HTTP dans le monde (source : Netcraft) IUT DE BAYONNE DEPARTEMENT INFORMATIQUE 12

13 PHP5 PHP est l acronyme récursif de «Hypertext Preprocessor». Il s agit d un langage de programmation interprété qui a été conçu dans le but de générer des pages web dynamiques. Sa rapidité, sa syntaxe très proche de celle du C, sa facilité d accès à des programmeurs débutant et sa documentation complète en font à l heure actuelle le langage de programmation le plus populaire et le plus utilisé dans la conception d application web. Dans sa version 5 PHP gère la programmation orientée objet ce qui n était pas le cas dans les versions précédentes ou alors de façon très limitée. J ai choisi ce langage car je possédais déjà quelques années d expérience d utilisation de PHP, de plus, le fait que l entreprise utilise aussi ce langage justifiait totalement ce choix. PostgreSQL PostgreSQL est un serveur de base de données open source qui a pour particularité contrairement à sont concurrent direct, MySQL, de gérer les transactions et d être plus à même de gérer des grosses charges de travail. Les transactions dans le domaine des bases de données ont pour but de garantir l intégrité des données. Elles peuvent être assimilées à des transactions économiques. Prenons l exemple d une personne qui irait acheter du pain à la boulangerie. Cette transaction va être composée de plusieurs étapes à savoir : choisir, payer, recevoir le produit et optionnellement recevoir la monnaie. Si une des étapes de la transaction échoue alors celle-ci va être annulée et chacune des parties va se retrouver à son état initial. Il en va de même dans le domaine des bases de données. Si une des étapes d une transaction échoue, on a la possibilité avec une base de données de type transactionnelle de revenir à l état précédent la transaction. Cela permet si une requête échoue, de ne pas appliquer les requêtes précédentes et suivantes pour ne pas corrompre les données. IUT DE BAYONNE DEPARTEMENT INFORMATIQUE 13

14 MVC Plus qu un outil, MVC pour «Model View Controller», est une méthode de conception d applications informatiques particulièrement adaptée à la création de sites web. Cette méthode différentie trois parties dans une application web qui sont les vues (ensembles de fichiers responsables de la génération du HTML), les modèles (fichiers responsables de la génération des données) et les contrôleurs (fichiers qui agissent sur les données). En MVC les codes de chaque partie doivent être séparés pour une meilleure visibilité de l application. SMARTY Smarty est un framework open source de «templates» (de vues) pour PHP qui à pour but d aider à la génération du HTML en employant un langage qui lui est propre. Son utilisation dans XTYWYSTX était d une part tout à fait justifiée dans le cadre du MVC mais avait plus pour vocation l enrichissement de mes connaissances. xhtml xhtml pour «Extensible HyperText Markup Language» et une amélioration du format HTML qui permet la création de pages internet. Prototype & Script.aculo.us Prototype et Script.aculo.us sont deux framework Javascript, c'est-à-dire, des librairies prêtes à l emploi. La première permet la manipulation du DOM (Document Object Model) c est à dire la manipulation des informations contenues dans un fichier HTML. Le second, qui se base sur Prototype, est une bibliothèque d effets visuels pour les pages HTML. AJAX AJAX est l acronyme de «Asynchronous JavaScript and XML». Il s agit de la méthode de conception de sites web qui est à l origine de la partie technique du WEB 2.0. L AJAX permet aux internautes, grâce au langage Javascript et à une méthode particulière appelée «xmlhttprequest», de communiquer avec un site web sans avoir à recharger les pages internet ce qui permet de gagner du temps, de la ressource puisque seules les informations nécessaires sont renvoyées et est beaucoup plus convivial pour l utilisateur. IUT DE BAYONNE DEPARTEMENT INFORMATIQUE 14

15 Architecture de l application La méthode MVC permet une meilleure lecture du code source, encore faut il savoir où chercher quoi. C est pour cela que j ai attaché une attention toute particulière à l architecture de mon application et à la dénomination des dossiers et fichiers pour rendre la vie plus facile aux personnes qui seront peut être un jour amenées à modifier et/ou améliorer mon application. Il faut savoir que chaque fonctionnalité de l application sera appelé par la suite un «module» et que chaque module est composé, conformément à la méthode MVC, d un contrôleur, d un modèle et d une vue. Arborescence et contenu des dossiers Dossier racine Le dossier racine contient l ensemble des dossiers de l application. Ce dossier contient deux fichiers à savoir, index.php, la page d accueille du site et un fichier.htaccess qui gère les règles de réécriture des URLs. Ce dernier peut être amené à être modifié si l application change d emplacement dans l arborescence d un serveur. Dossier conf Le dossier «conf» ne contient aucun autre dossier et ne possède qu un seul fichier, conf.php, qui est le fichier de configuration de l application. Ce dernier est inclus dans le contrôleur et le modèle de chaque module. C est dans ce fichier que sont initialisées les variables qui servent dans tous les modules de l application comme les informations concernant la connexion au serveur SQL, les paramètres de SMARTY etc. Dossier controllers Le dossier «controllers» contient les fichiers contrôleurs de chaque module qui portent la dénomination suivante : /controllers/<module>.controller.php Dossier data Le dossier «data» contient des fichiers de données sérialisées comme des fichiers de cache et des fichiers de stockage d informations. Les fichiers de données sérialisées sont des fichiers qui contiennent le contenu de variables qui ont été sérialisés, c'est-à-dire, dont on a fait passer la valeur de la forme volatile (stockée en mémoire centrale) à la forme persistante (stockée en mémoire secondaire). Dossier graphics Le dossier «graphics» stock tous les fichiers relatifs à l interface de l application à savoir les feuilles de style CSS et les images. Dossier js Le dossier «js» contient tous les fichiers Javascript de l application. C est aussi ici que sont stockés les framework Prototype et Script.aculo.us dans le sous dossier «scriptaculous». /js/scriptaculous/* /js/<module>.ajax.js IUT DE BAYONNE DEPARTEMENT INFORMATIQUE 15

16 Dossier lib Le dossier «lib» contient tous les fichiers PHP nécessaire à la bonne marche de l application qui ne rentrent pas dans la méthode MVC, à savoir les fichiers de fonctions et de classes. Ils sont rangés dans des sous dossiers en fonction de leur type et portent les dénominations suivantes : /lib/<type>/<module>.<type>.php» fichiers liés à un module particulier /lib/<type>/<librairie>.<type>.php» autres fichiers /lib/<librairie>/*» librairies externes Dossier models Le dossier «models» contient les fichiers modèles de chaque module qui portent la dénomination suivante : /models/<module>.model.php Dossier views Le dossier «views» contient 4 sous dossiers où sont stockés différents types de fichiers nécessaires au fonctionnement de Smarty : /views/cache/*» fichiers caches générés par Smarty (non utilisé) /views/config/*» fichiers de configuration pour les templates Smarty (non utilisé) /views/templates/<module>.view.tpl» templates pour chaque module /views/templates_c/*» Versions compilées des templates pour chaque module IUT DE BAYONNE DEPARTEMENT INFORMATIQUE 16

17 Position de l application dans l architecture Digistal Comme vous pouvez le constater sur le schéma ci-dessus, XTYWYSTX ne communique et n agit pas sur la base de données en passant par le Kernel Digistal, comme le font les sites Digistal, mais se connecte directement à la base de données. Le choix de court-circuiter le Kernel présente plusieurs avantages. D une part, il m a évité de me heurter à des limitations techniques liées au protocole de communication avec le Kernel. D autre part, cette connexion directe à la base de données réduit les temps d exécution et permet de ne pas augmenter la charge de travail du Kernel. IUT DE BAYONNE DEPARTEMENT INFORMATIQUE 17

18 Fonctionnement de MVC dans l application Ces schémas symbolisent le fonctionnement et le parcours des données dans l application grâce à la méthode MVC. La première partie du schéma est applicable aux modules qui proposent des actions à l utilisateur (tous à l exception d un seul), la seconde, s applique aux modules entièrement automatisés qui ne nécessitent aucune intervention de la part de l utilisateur. IUT DE BAYONNE DEPARTEMENT INFORMATIQUE 18

19 Modules de l application Dans cette partie seront décris les différents modules de l application, leur fonctionnement général, les problèmes qui se sont posés lors de la réalisation et les solutions trouvées. XTYWYSTX Ce module qui porte le même nom que l application en est le principal module puisque c était sa création qui justifiait ma présence chez Dreamclic. Il est chargé de la détection et de la suppression des enregistrements de chevaux erronés ou présents plusieurs fois dans la table cheval de la base de données. Sa réalisation a été la période la plus longue (temporellement parlant) du stage ce qui représente en tout plus de 50% du temps passé à la réalisation de l application entière. En tout il y aura eu trois versions majeures de ce module pour répondre à des besoins qui ont évolués au fil de sa conception. Le seul point commun entre ces différentes versions c est le fait que toute opération est sollicitée par l utilisateur, rien n a été automatisé car le facteur humain était indispensable dans chaque décision à prendre. De ce fait, l interface à été soigneusement étudiée dans le but d être la plus agréable possible pour l utilisateur. Ce module est le plus sensible de l application car c est lui qui manipule le plus de données. Afin de le valider de nombreux tests on été nécessaires pour vérifier que son utilisation ne corrompt pas les données de la base SQL. Version #1 Caractéristiques du module Ce module étant le premier que j ai commencé à réaliser il n a pas été implémenté en MVC dans sa première version. La vue et le modèle ne faisait qu un dans cette version. Cette première version du module, conformément au souhait exprimé par Mr. Martin, ne détectait que les chevaux ayant un ou des homonymes parfaits dans la base de données. Dans cette version du module toute la procédure de détection avait lieu sous forme de requêtes SQL ce qui avait pour avantage d être relativement rapide. La requête SQL de détection consistait dans un premier temps à compter pour chaque nom de chevaux combien de fois ils étaient présents dans la table et ensuite ne sélectionner que ceux présent plus d une seule fois. SELECT * FROM (SELECT nom, COUNT(nom) AS count_nom FROM cheval GROUP BY nom) AS chevaux WHERE chevaux.count_nom > 1 ORDER BY nom ASC LIMIT 20 OFFSET 0; Requête SQL de détection des homonymes Les noms des chevaux étant formaté quand il sont rentrés dans la base de données je n ai pas eu besoin de d appliquer de filtre sur les nom des enregistrements comme les fonctions TRIM qui permet d enlever les espaces en début et fin de chaine et LOWER qui change la casse des chaînes en minuscule. IUT DE BAYONNE DEPARTEMENT INFORMATIQUE 19

20 Le modèle et le contrôleur de cette première version permettaient à l utilisateur de pouvoir choisir l enregistrement qui reflétait le mieux la réalité et de fusionner les autres enregistrements avec celui choisi. La notion de fusion ici respecte le protocole suivant : Choix du cheval gardé et du cheval supprimé Mise à jour des liens des informations externe du cheval supprimé vers le cheval gardé Suppression du cheval supprimé J avais aussi implémenté une fonction qui sélectionnait automatiquement et qui mettait en valeur deux chevaux strictement identique (nom et caractéristiques) comme vous pouvez le voir sur la capture d écran ci-dessous pour le cheval «alcyon du defey» (cheval gardé présélectionné et surexposé en orange). Interface du module XTYWYSTX version #1 Problèmes : Cette version bien que fonctionnelle n était dans un premier temps pas conforme aux attentes de M. Bordes (principal utilisateur concerné) et ensuite, trop restrictive en ce qui concerne les actions proposées. M. Bordes voulait une détection plus vaste des doublons qui ne s arrête pas aux homonymes stricts (orthographe strictement identique). De plus le module ne prenait pas en compte le fait que chaque enregistrement puisse refléter qu une partie de la réalité. IUT DE BAYONNE DEPARTEMENT INFORMATIQUE 20

21 Version #2 Amélioration du modèle Contrairement à la première version du module, la détection des doublons ne se fait plus grâce au langage SQL mais entièrement en PHP. En effet le SQL ne permettait qu une détection stricte des doublons. Il a fallu réécrire entièrement le module pour pouvoir laisser une marge d erreur dans la détection. Pour cela j ai créé une copie de la table cheval sous forme de tableau PHP. Ensuite j ai conçu une fonction PHP qui détecte les doublons à partir de ce tableau et qui autorise une marge d erreur paramétrable facilement. Pour cela j ai utilisé la distance levenshtein entre deux chaines de caractères. La distance levenshtein est le nombre de caractères qui diffèrent entre deux chaines de caractères. Par exemple la distance levenshtein de deux chaînes identiques est 0, celle entre, «avion» et «aviron» est 1 puisqu une lettre a été rajoutée. Je considère que deux enregistrements sont des doublons quand la distance levenshtein entre 2 noms de chevaux est inférieure ou égal à un pourcentage de la moyenne de la longueur des deux chaines testées : $p = Pourcentage d erreur autorisé $a = Longueur de la chaine avion $b = Longueur de la chaine aviron Si la condition suivante et vraie les deux chevaux seront considérés comme des doublons. levenshtein ( avion, aviron ) <= (($a + $b) / 2) * $p) Dans le but d élargir au plus les résultats retournés par cette fonction les caractères accentués des chaines testées sont remplacé par les caractères équivalents non accentués. La taille de la table cheval a été un facteur à prendre en compte lors de la création de cette fonction car chaque enregistrement doit être testé avec tous les autres. Sur la base de données actuelle qui représente environ 8000 enregistrements cela représentait de distances levenshtein à évaluer, la complexité de ma fonction étant O(n²) où n correspond au nombre d enregistrement du tableau testé. De plus, la distance levenshtein étant un algorithme gourmand en ressources dont la complexité est O(m*n) où m et n représentent la longueur des chaines testées, il a fallu restreindre le nombre de tests pour réduire le temps d exécution de la fonction. Voici les conditions que doivent respecter deux chaines pour être testées : Elles doivent commencer par la même lettre. La valeur absolue de la différence des longueurs de deux chaines doit être strictement inférieure à 20% de la moyenne de la longueur des chaines. Des conditions de sortie de boucles ont été mises en place pour limiter le temps d exécution. Considérant que la première lettre est déterminante et sachant que le tableau est trié par ordre alphabétique, on arrête de tester un enregistrement aux autres pour passer au suivant quand on IUT DE BAYONNE DEPARTEMENT INFORMATIQUE 21

22 rencontre un enregistrement dont la place de la première lettre dans l ordre alphabétique est supérieure à celle de la première lettre de l enregistrement testé aux autres. Algorithme de la fonction de détection des doublons IUT DE BAYONNE DEPARTEMENT INFORMATIQUE 22

23 Sur une table qui contient environ 8000 chevaux situés sur le même serveur que le serveur web, le temps d exécution de cette fonction est d une cinquantaine de secondes. Ne pouvant pas me permettre de régénérer les résultats à chaque rafraichissement de page, les résultats retournés par la fonction sous forme de tableau sont sérialisés et mis dans un cache dont la durée de vie est initialisée dans le fichier config.php, qui par défaut a une valeur de 23 heures. Amélioration de la vue et du contrôleur Dans cette seconde version du module la vue a été totalement refaite, d une part pour se conformer aux nouvelles données fournies par le modèle, d autre part pour proposer plus de fonctionnalités à l utilisateur. C est ainsi que la notion de fusion de la première version du module a été repensée. Avant il n était possible que de choisir un cheval à garder et un à supprimer. Dorénavant le choix du cheval gardé lors d une fusion n a plus d importance car il est possible de choisir, grâce à un système de boutons radio, toutes les caractéristiques voulues pour le cheval gardé en choisissant parmi les caractéristiques des chevaux faisant partie du tuple de chevaux considérées comme étant des doublons. De plus, une fusion peut à partir de cette version contenir plus de deux chevaux ce qui est plus commode pour l utilisateur. Trois nouvelles fonctions ont été rajoutées à cette version. La première fonction est la possibilité de supprimer un cheval de la base de données. La seconde permet à l utilisateur de «différentier» les chevaux d un tuple de doublons. La différentiation de chevaux permet à l utilisateur de dire à l application que plusieurs chevaux sont différents ce qui permet, quand tous les chevaux d un tuple ont été différentiés, de ne plus les afficher jusqu à ce qu un nouveau cheval soit rajouté au tuple. La troisième fonctionnalité permet à l utilisateur de voir dans une page toutes les caractéristiques des chevaux sélectionnés ainsi que les noms de leurs enfants. De plus cette fonctionnalité affiche les résultats fournit par le site des Haras nationaux (www.haras-nationaux.fr), annuaire national équin, en se basant sur une recherche des noms des chevaux sélectionnés. Problème : Le fait que les résultats de la fonction de détection des doublons soient mis dans un cache pose un problème. En effet si un client venait à modifier un cheval pendant la durée de vie du cache des résultats, les modifications du client peuvent être écrasées par une action de fusion car le cache ne prend pas en compte les modifications externes. Autre cas, un utilisateur est en train de télécharger une vidéo sur le serveur Digistal pour un cheval, si le cheval est supprimé par une action de fusion, l utilisateur aura perdu du temps à faire une modification qui au final n aboutira pas. Contrairement au premier, le deuxième cas n est pas gérable car chaque document est associé à un cheval grâce à l identifiant de ce dernier. Or, lors d une fusion, l identifiant du cheval qui résulte de la fusion de chevaux est choisi aléatoirement parmi ceux des chevaux fusionnés avec une préférence pour l identifiant du premier cheval appartenant à un groupe. Donc si ce cas arrivait il n y aurait qu une minuscule chance pour que l identifiant du cheval associé au document téléchargé durant la fusion corresponde à l identifiant du nouveau cheval. IUT DE BAYONNE DEPARTEMENT INFORMATIQUE 23

24 Captures d écran Interface de la version #2 du module XTYWYSTX Console qui permet la gestion des actions sur les chevaux sélectionnés IUT DE BAYONNE DEPARTEMENT INFORMATIQUE 24

25 Fiches des chevaux sélectionnés avec les résultats fournit par les haras nationaux. IUT DE BAYONNE DEPARTEMENT INFORMATIQUE 25

26 Version #3 Le but de cette version était de remédier au problème mis en exergue précédemment. La version #2 ayant été validée comme fonctionnelle par Mrs Bordes et Martin. La première idée qui m est venue pour résoudre le problème cité fut d instaurer un mode de maintenance dans l administration des sites Digistal empêchant les clients de pouvoir modifier leurs chevaux durant l utilisation de ce module. Cette idée qui aurait été facile à implémenter a été supplantée par une autre idée que m a proposée M. Martin. Son idée consistait à reproduire le comportement des utilitaires de partitionnement de disque dur et en particulier celui de Partition Magic. Ce logiciel propose tout une pléthore d actions à effectuer sur un disque dur. Dans un premier temps il nous demande de choisir les actions que nous voulons effectuer et il les empiles dans un log d actions qu il exécutera d un seul coup au redémarrage de la machine. L idée était donc, au lieu d exécuter les actions au fur et à mesure, de les lister dans un log et de les exécuter toutes ensemble à la fin de l opération avec une vérification des données. Pour cela j ai modifié le contrôleur du module pour qu il empile les actions avec toutes leurs caractéristiques dans un log au lieu des les exécuter et j ai modifié le modèle pour qu il crée deux copie des résultats de la fonction de détection des doublons que j ai mis en cache. Ces deux caches seront nommés respectivement cache de vérification et cache d affichage. Le cache de vérification n est jamais modifié par le contrôleur quand l utilisateur valide une action (fusion ou suppression) contrairement au cache d affichage car ce premier servira lors de l exécution du log d action à vérifier que les chevaux de la base de données qui sont présents dans le log d actions n ont pas été modifiés durant la durée de vie du cache (durée durant laquelle l utilisateur et censé constitué un log d actions) par un client Digistal. Le cache d affichage, qui, comme son nom l indique, contient les données qui seront affichées, est modifié à chaque action pour que l affichage des pages corresponde bien aux actions qui seront effectuées en fin d opération quand l utilisateur rafraichit les pages. Il faut savoir que le log d action est écrasé à chaque fois que le cache d affichage et le cache de vérifications sont régénérés, c'est-à-dire, à la fin de la durée de vie du cache définie ou alors lorsque le pourcentage d erreur autorisé dans la détection des doublons est changé via l interface. L avantage de ce système est, qu en plus de résoudre le problème posé précédemment, qu il permet de revenir en arrière si l utilisateur se rend compte qu il s est trompé dans une action. En effet la vue qui permet d exécuter le log d action permet aussi des actions à ne pas exécuter ce qui fournit une sécurité supplémentaire lors de l utilisation de ce module. IUT DE BAYONNE DEPARTEMENT INFORMATIQUE 26

27 Problème : Il peut arriver qu une action modifie un cheval et de fait son identifiant dans la base de données et que ce cheval soit parent d un ou plusieurs chevaux qui font aussi partie d un ou plusieurs tuples de doublons. Si plusieurs de ces chevaux se retrouvent associées à des actions dans le log d actions seule la première action sera exécutée car le contrôleur ne met pas à jour les enfants des chevaux dans le cache d affichage or c est sur ce cache que sont basées les caractéristiques des actions et ces actions échoueront lors de la vérification des données puisque l identifiant du cheval parent aura sans doute été modifié par la première action. Ce problème, bien que mis à jour, n est pas voué à être résolu car il peut être rencontré que dans de très rares cas et de plus, il ne pose aucun problème de corruption de données. Le seul effet négatif sera la non exécution d un petit nombre d actions qui seront listées dans un rapport qui sera présenté à l utilisateur si au moins une action n a pas pu être exécutée. Diagramme de séquence UML du module XTYWYSTX dans son ensemble IUT DE BAYONNE DEPARTEMENT INFORMATIQUE 27

28 Captures d écran Interface de la version #3 du module XTYWYSTX Interface d exécution du log d action du module XTYWYSTX version #3 IUT DE BAYONNE DEPARTEMENT INFORMATIQUE 28

29 Interface du rapport d erreur du module XTYXYSTX version #3 IUT DE BAYONNE DEPARTEMENT INFORMATIQUE 29

30 GhostBuster Ghostbuster est un module qui va servir à éliminer les enregistrements dans différentes tables de la base données qui n ont plus de raison d être présent dans le but de faire respecter l intégrité référentielle de la base de données. Il s agit par exemple d enregistrements de documents sur des chevaux qui n existent plus. On appelle ces enregistrements des enregistrements fantômes d où le titre du module qui est un clin d œil au célèbre blockbuster américain. Ce module est le seul module entièrement automatisé, l utilisateur ne peut y faire aucune action mais peut y consulter les résultats des opérations effectuées listées dans un rapport. Captures d écran Interface du module Ghostbuster avec les résultats des opérations IUT DE BAYONNE DEPARTEMENT INFORMATIQUE 30

31 Dédale Ce module qui porte le nom du personnage de la mythologie grecque auquel on associe la conception du célèbre labyrinthe renfermant le Minotaure permet la détection d anomalies dans la généalogie des chevaux présents dans la base de données. J ai choisi ce nom pour ce module parce que la première impression que j ai eue quand on m a demandé la conception de ce module était que cela allait être un vrai casse tête. La définition d une anomalie dans la généalogie prise en compte dans ce module est la présence de cycles. Un cycle est une anomalie qui permet de faire une boucle infinie lorsque l on remonte la généalogie d un cheval. Voici un exemple concret de cycle : Sur ce schéma le haut de la flèche représente le parent et le bas l enfant. On voit ici que les chevaux #1 et #2 sont les parents du cheval #3 et que ce dernier avec le cheval #4 sont les parents du cheval #5. Sur ce schéma l anomalie vient du fait que le cheval #5 soit considéré comme le père du cheval #1 ce qui est totalement absurde (même dans le domaine équin) car cela reviendrait à dire que le cheval #5 est le père de son grand père. IUT DE BAYONNE DEPARTEMENT INFORMATIQUE 31

32 La façon dont a été implémentée la base de données permet de remonter la généalogie d un cheval car chaque enregistrement est renseigné avec l identifiant de sa mère et de son père. Dans cet exemple si on remonte la généalogie l on va s apercevoir que l on peut faire un cycle complet qui va se traduire par une boucle infinie car on peut remonter sa généalogie sans jamais s arrêter si aucune vérification n est faite. Le but de ce module est donc de repérer les cycles dans la base de données. Pour cela j ai créé une copie de la table cheval sous forme de tableau PHP comme je l avais fait pour le module XTYWYSTX au détail près que le tableau ne contient que l identifiant du cheval, son nom et les identifiants des ses parents. A partir de ce tableau j ai conçu une fonction PHP récursive qui permet la détection de cycle en testant la généalogie des chevaux un par un. Cette fonction retourne un booléen qui est initialisé à vrai lorsque la fonction a détecté un cycle dans la généalogie du cheval. A noter, la fonction ne retournera vrai que si le cheval fait directement partie d un cycle comme c est le cas dans l exemple précédent (chevaux #1, #3, #5) mais elle retournera faux si il y a bien un cycle dans sa généalogie mais qu il n en fait pas directement partie comme dans l exemple ci-dessous (cheval #6). IUT DE BAYONNE DEPARTEMENT INFORMATIQUE 32

33 Le fait de ne considérer la généalogie d un cheval comme erronée que s il fait partie d un cycle a pour but de limiter les résultats pour faciliter la détection de l erreur par l utilisateur. Une fois la liste des chevaux faisant partie d un cycle générée, j ai conçu une fonction qui permet de savoir si un cheval fait partie du même cycle qu un autre cheval. Cette fonction est en fait constituée d un simple test ; S il est possible de trouver le deuxième cheval en remontant la généalogie du premier cheval et (et non pas ou, c est très important) vice et versa alors cela veut dire que les deux chevaux font partie du même cycle. Cette fonction est très intéressante pour l utilisateur, car elle permet, si la généalogie de la base de données contient plusieurs cycles, de regrouper les chevaux en fonction du cycle auquel ils appartiennent. Problème : Lors des tests de la fonction de détection de cycle je me suis rendu compte, lorsque je ne gérais pas encore les boucles infinies, que PHP n autorise que 64 appels de fonction récursif. Cela veut dire que si la généalogie d un cheval comporte plus de 64 parents, la fonction va s arrêter sur une erreur. En clair cela veut dire que ma fonction ne sera pas capable de détecter les cycles contenant plus de 64 chevaux. Capture d écran Interface du module Dédale IUT DE BAYONNE DEPARTEMENT INFORMATIQUE 33

34 Reuters Ce module, qui porte le nom de la célèbre agence de presse, est destiné à gérer les auteurs de documents dans la base de données. En effet il arrive souvent qu un auteur recrée un compte à chaque fois qu il veut poster des documents au lieu d utiliser son véritable compte. Ce module se contente donc de permettre à l utilisateur la fusion et la modification des auteurs. L interface de ce module a été conçue dans le but d être la plus agréable possible à utiliser. Ainsi, l utilisateur n a jamais besoin de rafraichir la page pour voir le résultat des actions qu il a effectuées. Captures d écran Interface du module Reuters Modification d un auteur IUT DE BAYONNE DEPARTEMENT INFORMATIQUE 34

35 Fusion d auteurs IUT DE BAYONNE DEPARTEMENT INFORMATIQUE 35

36 DeviantHorse DeviantHorse est un module créé à mon initiative qui permet la détection des chevaux dont «l orientation sexuelle» a été quelque peu malmenée par les clients. Il s agit en fait de détecter la présence de chevaux qui, par exemple, de sexe masculin, sont considérés comme étant la mère d un ou plusieurs autres chevaux et inversement, c'est-à-dire, des chevaux de sexe féminin étant considérées comme étant le père d un ou plusieurs autres chevaux. SELECT * FROM cheval WHERE "idsexe" IN (2, 3) AND id IN (SELECT "idmere" FROM cheval WHERE "idmere"!= 0); Requête SQL de détection des chevaux mâles étant mère SELECT * FROM cheval WHERE "idsexe" = 1 AND id IN (SELECT "idpere" FROM cheval WHERE "idpere"!= 0); Requête SQL de détection des chevaux femelle étant père La vue et le contrôleur de ce module permettent à l utilisateur de changer le sexe des chevaux concernés par ces problèmes. Captures d écran Interface du module DeviantHorse IUT DE BAYONNE DEPARTEMENT INFORMATIQUE 36

37 DBDump DBDump est un module qui permet de sauvegarder la base de données sous forme de script SQL. Il a pour but de permettre à l utilisateur de réinitialiser les données de la base dans le cas où ce dernier aurait effectué des actions non désirées ou bien si l utilisateur se rend compte que l application contient des erreurs et ne fait pas ce qu il faut. Il s agit en fait de l ultime sécurité pour garantir les données de la base. Les sauvegardes sous formes de script SQL ne touchent pas à la structure de la table, elles se contentent seulement quand on les exécute de vider les données des tables et de réinitialiser les données comme elles étaient lors de la sauvegarde. Pour cela l utilisateur dispose d une administration qui lui permet de créer des sauvegardes simplement et de les exécuter si besoin est. Capture d écran Interface du module de sauvegarde de la base SQL. IUT DE BAYONNE DEPARTEMENT INFORMATIQUE 37

Soutenance de stage [[CREATION D UNE APPLICATION DE MAINTENANCE DE BASE DE DONNEES]] RABOT Sylvain

Soutenance de stage [[CREATION D UNE APPLICATION DE MAINTENANCE DE BASE DE DONNEES]] RABOT Sylvain RABOT Sylvain Maitre de stage : M. Laurent Bordes Responsable technique : M. Ludovic Martin [[CREATION D UNE APPLICATION DE MAINTENANCE DE BASE DE DONNEES]] Sommaire Présentation de la société Dreamclic...

Plus en détail

de survie du chef de projet

de survie du chef de projet KIT de survie du chef de projet 01 1 2 3 4 5 6 04 03 07 07 03 03 LE SERVEUR LE CLIENT TECHNOLOGIE WEB CLIENT LE SERVEUR WEB TECHNIQUES & CADRE DE TRAVAIL APPLICATIONS 101 LE SERVEUR Un serveur informatique

Plus en détail

Le langage PHP permet donc de construire des sites web dynamiques, contrairement au langage HTML, qui donnera toujours la même page web.

Le langage PHP permet donc de construire des sites web dynamiques, contrairement au langage HTML, qui donnera toujours la même page web. Document 1 : client et serveur Les ordinateurs sur lesquels sont stockés les sites web sont appelés des serveurs. Ce sont des machines qui sont dédiées à cet effet : elles sont souvent sans écran et sans

Plus en détail

Projet 2. Gestion des services enseignants CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE. G r o u p e :

Projet 2. Gestion des services enseignants CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE. G r o u p e : CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE Projet 2 Gestion des services enseignants G r o u p e : B E L G H I T Y a s m i n e S A N C H E Z - D U B R O N T Y u r i f e r M O N T A Z E R S i

Plus en détail

Projet Web. Tim Burton. Refonte complète du site de Tim Burton en utilisant les dernières technologies du web : HTML 5 / CSS 3 / JavaScript...

Projet Web. Tim Burton. Refonte complète du site de Tim Burton en utilisant les dernières technologies du web : HTML 5 / CSS 3 / JavaScript... Projet Web Tim Burton Refonte complète du site de Tim Burton en utilisant les dernières technologies du web : HTML 5 / CSS 3 / JavaScript... Par Omar EDDASSER L3 ISC parcours MIAGE Sous l enseignement

Plus en détail

Développement Web Introduction générale

Développement Web Introduction générale 1 / 58 Développement Web Introduction générale Jean-Michel Richer jean-michel.richer@univ-angers.fr http://www.info.univ-angers.fr/pub/richer Juillet 2008 2 / 58 Plan Plan 1 Introduction 2 Historique et

Plus en détail

Programmation Web. Madalina Croitoru IUT Montpellier

Programmation Web. Madalina Croitoru IUT Montpellier Programmation Web Madalina Croitoru IUT Montpellier Organisation du cours 4 semaines 4 ½ h / semaine: 2heures cours 3 ½ heures TP Notation: continue interrogation cours + rendu à la fin de chaque séance

Plus en détail

Devenez un véritable développeur web en 3 mois!

Devenez un véritable développeur web en 3 mois! Devenez un véritable développeur web en 3 mois! L objectif de la 3W Academy est de former des petits groupes d élèves au développement de sites web dynamiques ainsi qu à la création d applications web

Plus en détail

NVU, Notepad++ (ou le bloc-note), MySQL, PhpMyAdmin. HTML, PHP, cas d utilisation, maquettage, programmation connaissances en HTML, PHP et SQL

NVU, Notepad++ (ou le bloc-note), MySQL, PhpMyAdmin. HTML, PHP, cas d utilisation, maquettage, programmation connaissances en HTML, PHP et SQL Prise en main de NVU et Notepad++ (conception d application web avec PHP et MySql) Propriétés Intitulé long Formation concernée Matière Présentation Description Conception de pages web dynamiques à l aide

Plus en détail

PHP/MySQL avec Dreamweaver CS4

PHP/MySQL avec Dreamweaver CS4 PHP/MySQL avec Dreamweaver CS4 Dreamweaver CS4 Jean-Marie Defrance Groupe Eyrolles, 2009, ISBN : 978-2-212-12551-1 7 Étude de cas : un site marchand Dans ce dernier chapitre, nous allons exploiter Dreamweaver

Plus en détail

Rapport de Stage Christopher Chedeau 2 au 26 Juin 2009

Rapport de Stage Christopher Chedeau 2 au 26 Juin 2009 Rapport de Stage Christopher Chedeau 2 au 26 Juin 2009 «Web. De l intégration de pages statiques HTML à un CMS, à la dynamisation d un site grâce au Javascript et l utilisation de nouvelles technologies

Plus en détail

II. EXCEL/QUERY ET SQL

II. EXCEL/QUERY ET SQL I. AU TRAVAIL, SQL! 1. Qu est-ce que SQL?... 19 2. SQL est un indépendant... 19 3. Comment est structuré le SQL?... 20 4. Base, table et champ... 21 5. Quelle est la syntaxe générale des instructions SQL?...

Plus en détail

BTS SIO. Session 2013 2015

BTS SIO. Session 2013 2015 BTS SIO Services Informatiques aux Organisations Session 2013 2015 Collé Maxime Année 2013-2014 Option : SLAM Activité professionnelle N 1 NATURE DE L'ACTIVITE : DÉVELOPPEMENT DE L APPLICATION WEB «GESTION

Plus en détail

//////////////////////////////////////////////////////////////////// Développement Web

//////////////////////////////////////////////////////////////////// Développement Web ////////////////////// Développement Web / INTRODUCTION Développement Web Le développement, également appelé programmation, désigne l'action de composer des programmes sous forme d'algorithme (codage).

Plus en détail

Evolutions du Web et des langages

Evolutions du Web et des langages Evolutions du Web Evolutions du Web et des langages WEB statique Ces pages sont écrites en HTML Les pages demandées sont identiques quelque soit La personne qui les demande L heure de la demande Etc. WEB

Plus en détail

Architecture applicative de l application Web

Architecture applicative de l application Web Architecture applicative de l application Web Principes d organisation de l application PHP Gsb-AppliFrais Les principes d'organisation de l'application s'inspirent des travaux réalisés autour du contexte

Plus en détail

PHP/MYSQL. Web Dynamique

PHP/MYSQL. Web Dynamique PHP/MYSQL Web Dynamique ENSG Juin 2008 Qui suis-je? Guillaume Gautreau Responsable projets Systèmes d information à l ENPC guillaume@ghusse.com http://www.ghusse.com Ces 6 jours de formation Jour 1 : présentations,

Plus en détail

INTRODUCTION CHAPITRE 1

INTRODUCTION CHAPITRE 1 CHAPITRE 1 INTRODUCTION Query, qu est-ce que c est?... 11 HTML, CSS, JavaScript, PHP : qui fait quoi?... 16 Un environnement de développement simple et gratuit... 19 Ce que vous allez apprendre... 20 9

Plus en détail

Symfony 2. 1.Définition de symfony 2. 2.Installation. 3.Structure. 4.Symfony et les commandes

Symfony 2. 1.Définition de symfony 2. 2.Installation. 3.Structure. 4.Symfony et les commandes Symfony 2 Sommaire : 1.Définition de symfony 2 2.Installation 3.Structure 4.Symfony et les commandes 5.Le fonctionnement : le routeur (les url), les bundles, twig(templates) 6.L architecture de symfony2

Plus en détail

Comparatif CMS. Laurent BAUREN S Bérenger VIDAL Julie NOVI Tautu IENFA

Comparatif CMS. Laurent BAUREN S Bérenger VIDAL Julie NOVI Tautu IENFA Comparatif CMS Laurent BAUREN S Bérenger VIDAL Julie NOVI Tautu IENFA Sommaire Introduction : Dans le cadre de notre projet de master première année, il nous a été demandé de développer un moteur de recherche

Plus en détail

TP Projet Informatique : Persistance en Php et prise en main GIT / Atlassian

TP Projet Informatique : Persistance en Php et prise en main GIT / Atlassian TP Projet Informatique : Persistance en Php et prise en main GIT / Atlassian Objectif : faire un site pour gérer des articles par catégorie. Chaque catégorie a un nom, chaque catégorie est constitué d

Plus en détail

SOMMAIRE. I. Introduction 02. II. Glossaire 03 a. Glossaire technique 03 b. Glossaire fonctionnel 04

SOMMAIRE. I. Introduction 02. II. Glossaire 03 a. Glossaire technique 03 b. Glossaire fonctionnel 04 SOMMAIRE I. Introduction 02 II. Glossaire 03 a. Glossaire technique 03 b. Glossaire fonctionnel 04 III. Présentation de l'association 05 a. Présentation juridique et géographique 05 b. Présentation de

Plus en détail

Webmaster / Concepteur Multimedia

Webmaster / Concepteur Multimedia Durée : 217 heures Objectifs : Webmaster / Concepteur Multimedia Participants : Toute personne attirée par la création de site internet professionnel. Méthodes : Mise en pratique sur micro-ordinateur.

Plus en détail

Manuel du rédacteur. Dernière mise à jour : le 14/04/2010

Manuel du rédacteur. Dernière mise à jour : le 14/04/2010 Manuel du rédacteur Dernière mise à jour : le 14/04/2010 Table des matières 1 PRÉSENTATION GÉNÉRALE... 3 2 L INTERFACE DE GESTION... 3 2.1 ACCÈS À L INTERFACE DE GESTION... 3 2.2 PRÉSENTATION GÉNÉRALE...

Plus en détail

Repérage dans le support de cours. D3.js ~ Data Driven Document. Notes. Notes

Repérage dans le support de cours. D3.js ~ Data Driven Document. Notes. Notes Visualisation interactive de données sur le web Présentation Généralités Repérage dans le support de cours Sur les slides projetés, le numéro de page entre parenthèse correspond à celui de votre support

Plus en détail

CRÉER, ROUTER ET GÉRER UNE NEWSLETTER, UN E-MAILING

CRÉER, ROUTER ET GÉRER UNE NEWSLETTER, UN E-MAILING CRÉER, ROUTER ET GÉRER UNE NEWSLETTER, UN E-MAILING Durée : 3J / 21H Formateur : Consultant expert en PAO et Web-marketing. Groupe de : 4 max Formation au web marketing Objectifs : Mettre en oeuvre des

Plus en détail

Introduction JOOMLA. Fonctionnalités. Avantages. Hainaut P. 2013 - www.coursonline.be 1. Joomla est un système de gestion de contenu CMS open source

Introduction JOOMLA. Fonctionnalités. Avantages. Hainaut P. 2013 - www.coursonline.be 1. Joomla est un système de gestion de contenu CMS open source JOOMLA Introduction Joomla est un système de gestion de contenu CMS open source Il permet la conception rapide de sites Web avec une présentation soignée et une navigation très simple C est l outil idéal

Plus en détail

Les formations. Développeur Logiciel. ENI Ecole Informatique

Les formations. Développeur Logiciel. ENI Ecole Informatique page 1/8 Titre professionnel : Inscrit au RNCP de Niveau III (Bac + 2) (J.O. du 19/02/13) 24 semaines + 8 semaines de stage (uniquement en formation continue) Développer une application orientée objet

Plus en détail

Créez votre premier site web De la conception à la réalisation

Créez votre premier site web De la conception à la réalisation Chapitre 1 : Introduction A. Introduction 17 Chapitre 2 : Les langages A. L objectif 21 B. L HTML 21 1. L état des lieux 21 2. Les éléments HTML 21 3. Les attributs 22 4. Les caractères 23 5. Les espaces

Plus en détail

1 Introduction... 17. 2 Ma première page PHP... 25. 3 Les clefs du PHP... 53

1 Introduction... 17. 2 Ma première page PHP... 25. 3 Les clefs du PHP... 53 1 Introduction... 17 1.1. Naissance de ce langage... 18 1.2. Evolution du langage... 18 1.3. Intérêt de ce langage... 19 La liberté... 19 La portabilité... 20 La facilité... 21 Un peu d histoire... 21

Plus en détail

Bases de données Cours 1 : Généralités sur les bases de données

Bases de données Cours 1 : Généralités sur les bases de données Cours 1 : Généralités sur les bases de données POLYTECH Université d Aix-Marseille odile.papini@univ-amu.fr http://odile.papini.perso.esil.univmed.fr/sources/bd.html Plan du cours 1 1 Qu est ce qu une

Plus en détail

Créez et administrez vos sites Web

Créez et administrez vos sites Web Joomla! 3.3 Créez et administrez vos sites Web Didier MAZIER Table des matières.. 1 Chapitre 1 : Découvrir Joomla! A. Les raisons de créer un site sous Joomla!.. 9 B. Se documenter sur Joomla! 9 C. La

Plus en détail

Mercredi 15 Janvier 2014

Mercredi 15 Janvier 2014 De la conception au site web Mercredi 15 Janvier 2014 Loïc THOMAS Géo-Hyd Responsable Informatique & Ingénierie des Systèmes d'information loic.thomas@anteagroup.com 02 38 64 26 41 Architecture Il est

Plus en détail

Les formations. Développeur Logiciel. ENI Ecole Informatique

Les formations. Développeur Logiciel. ENI Ecole Informatique page 1/5 Titre professionnel : Reconnu par l Etat de niveau III (Bac), inscrit au RNCP (arrêté du 12/10/07, J.O. n 246 du 23/10/07) (32 semaines) Unité 1 : Structurer une application 6 semaines Module

Plus en détail

Gestion du parc informatique matériel et logiciel de l Ensicaen. Rapport de projet. Spécialité Informatique 2 e année. SAKHI Taoufik SIFAOUI Mohammed

Gestion du parc informatique matériel et logiciel de l Ensicaen. Rapport de projet. Spécialité Informatique 2 e année. SAKHI Taoufik SIFAOUI Mohammed 6, bd maréchal Juin F-14050 Caen cedex 4 Spécialité Informatique 2 e année Rapport de projet Gestion du parc informatique matériel et logiciel de l Ensicaen SAKHI Taoufik SIFAOUI Mohammed Suivi ENSICAEN

Plus en détail

Développer de nouvelles fonctionnalités

Développer de nouvelles fonctionnalités 19 Développer de nouvelles fonctionnalités Chaque site e-commerce est unique. Bien que Magento soit une application riche, des besoins spécifiques apparaîtront et l ajout de modules deviendra nécessaire.

Plus en détail

Applications orientées données (NSY135)

Applications orientées données (NSY135) Applications orientées données (NSY135) 2 Applications Web Dynamiques Auteurs: Raphaël Fournier-S niehotta et Philippe Rigaux (philippe.rigaux@cnam.fr,fournier@cnam.fr) Département d informatique Conservatoire

Plus en détail

WordPress : Guide à l édition

WordPress : Guide à l édition WordPress : Guide à l édition WordPress : Guide à l édition... 1 Présentation... 2 1. Accès au site... 2 2. Le tableau de bord... 2 3. Editez les contenus... 4 Quelle est la différence entre les pages

Plus en détail

Apprendre à développer avec JavaScript

Apprendre à développer avec JavaScript Présentation du langage JavaScript 1. Définition et rapide historique 11 2. Pré-requis pour un apprentissage aisé du langage 13 3. Outillage nécessaire 14 4. Positionnement du JavaScript face à d autres

Plus en détail

Nextformation PARIS. Dossier de Synthèse. Promotion Octobre 2011. Page 1

Nextformation PARIS. Dossier de Synthèse. Promotion Octobre 2011. Page 1 Dossier de Synthèse Promotion Octobre 2011 Page 1 Sommaire Remerciements... 3 Présentation de la société... 3 Projets durant le stage... 3 Les projets... 4 Contexte... 4 Logiciels utilisés... 4 Projet

Plus en détail

Petite définition : Présentation :

Petite définition : Présentation : Petite définition : Le Web 2.0 est une technologie qui permet la création de réseaux sociaux, de communautés, via divers produits (des sites communautaires, des blogs, des forums, des wiki ), qui vise

Plus en détail

PHP & BD. PHP & Bases de données. Logiciels & matériels utilisés. Bases de données et Web

PHP & BD. PHP & Bases de données. Logiciels & matériels utilisés. Bases de données et Web PHP & Bases de données La quantité de données utilisée par certains sites web nécessite l'utilisation d'une base de données Il faut donc disposer d'un SGBD (mysql, postgresql, oracle, ) installé sur un

Plus en détail

Formation WEB DESIGN. Catalogue. Immeuble Normandie II 55, rue Amiral Cécille

Formation WEB DESIGN. Catalogue. Immeuble Normandie II 55, rue Amiral Cécille Immeuble Normandie II 55, rue Amiral Cécille 7 6 1 0 0 R O U E N Tél. : 02 35 03 87 09 Fax : 02 35 03 49 29 Email : formation@art-communication.fr Site web : www.art-communication.fr Catalogue WEB DESIGN

Plus en détail

Langages du Web. Que savez vous???

Langages du Web. Que savez vous??? Langages du Web Que savez vous??? Le WEB World Wide Web ouwww ouweb Toile d'araignée mondiale ou la toile Le Web utilise le réseau Internet pour relier des serveurs qui, grâce aux protocoles HTTP, HTTPS,

Plus en détail

Unité de formation 1 : Structurer une application. Durée : 3 semaines

Unité de formation 1 : Structurer une application. Durée : 3 semaines PROGRAMME «DEVELOPPEUR LOGICIEL» Titre professionnel : «Développeur Logiciel» Inscrit au RNCP de niveau III (Bac+2) (JO du 23 Octobre 2007) (32 semaines) Unité de formation 1 : Structurer une application

Plus en détail

INFORMATIQUE & WEB. PARCOURS CERTIFICAT PROFESSIONNEL Programmation de sites Web. 1 an 7 MODULES. Code du diplôme : CP09

INFORMATIQUE & WEB. PARCOURS CERTIFICAT PROFESSIONNEL Programmation de sites Web. 1 an 7 MODULES. Code du diplôme : CP09 INFORMATIQUE & WEB Code du diplôme : CP09 Passionné par l informatique et le web, vous souhaitez obtenir une certification dans un domaine porteur et enrichir votre CV? PARCOURS CERTIFICAT PROFESSIONNEL

Plus en détail

Groupe Eyrolles, 2003, ISBN : 2-212-11317-X

Groupe Eyrolles, 2003, ISBN : 2-212-11317-X Groupe Eyrolles, 2003, ISBN : 2-212-11317-X 3 Création de pages dynamiques courantes Dans le chapitre précédent, nous avons installé et configuré tous les éléments indispensables à la mise en œuvre d une

Plus en détail

Compte rendu d activité Fiche n 1

Compte rendu d activité Fiche n 1 Compte rendu d activité Fiche n 1 Alexandre K. (http://ploufix.free.fr) Nature de l activité Création d une base de connaissances avec PostgreSQL Contexte : Le responsable technique souhaite la mise en

Plus en détail

BES WEBDEVELOPER ACTIVITÉ RÔLE

BES WEBDEVELOPER ACTIVITÉ RÔLE BES WEBDEVELOPER ACTIVITÉ Le web developer participe aux activités concernant la conception, la réalisation, la mise à jour, la maintenance et l évolution d applications internet/intranet statiques et

Plus en détail

EFREI 2008-2009 Mathieu Nebra

EFREI 2008-2009 Mathieu Nebra EFREI 2008-2009 Mathieu Nebra Tim Berners-Lee, W3C, recommandations Naissance du Wold Wide Web Le web a été inventé en 1991 par Tim Berners-Lee au CERN (Genève) Il définit le langage HTML permettant de

Plus en détail

Joomla : un système de gestion de contenu

Joomla : un système de gestion de contenu CHAPITRE 2 Joomla : un système de gestion de contenu Si SGC est l abréviation française pour système de gestion de contenu, l abréviation CMS de l anglais Content Management System est le terme le plus

Plus en détail

les techniques d'extraction, les formulaires et intégration dans un site WEB

les techniques d'extraction, les formulaires et intégration dans un site WEB les techniques d'extraction, les formulaires et intégration dans un site WEB Edyta Bellouni MSHS-T, UMS838 Plan L extraction des données pour un site en ligne Architecture et techniques Les différents

Plus en détail

Créer et partager des fichiers

Créer et partager des fichiers Créer et partager des fichiers Le rôle Services de fichiers... 246 Les autorisations de fichiers NTFS... 255 Recherche de comptes d utilisateurs et d ordinateurs dans Active Directory... 262 Délégation

Plus en détail

Catalogue de formation

Catalogue de formation 4 rue Jules Raimu 31 200 Toulouse http://www.creabilis.com contact@creabilis.com Tél. : 05 34 251 641 Fax : 05 34 257 956 Catalogue de formation CREABILIS S.A.R.L au capital de 7500 - R.C.S. Toulouse 441

Plus en détail

Écriture de pages Web

Écriture de pages Web Écriture de pages Web Le langage HTML / XHTML Laurent Tichit Janvier 2011 Laurent Tichit 2005-2010 1 Comment fonctionne le Web? C'est un mécanisme client-serveur. Logiciel serveur : programme qui a pour

Plus en détail

Compte-Rendu SDL. «Reprise de l application de gestion de listes de présences des alternants»

Compte-Rendu SDL. «Reprise de l application de gestion de listes de présences des alternants» Compte-Rendu SDL Auteurs : BOUTROUILLE Alexis BAILLEUL Pierre Tuteur : Ioan Marius Bilasco «Reprise de l application de gestion de listes de présences des alternants» Master MIAGE 1 Année 2012/2013 1 Remerciements

Plus en détail

Création d un catalogue en ligne

Création d un catalogue en ligne 5 Création d un catalogue en ligne Au sommaire de ce chapitre Fonctionnement théorique Définition de jeux d enregistrements Insertion de contenu dynamique Aperçu des données Finalisation de la page de

Plus en détail

Professeur-superviseur Alain April

Professeur-superviseur Alain April RAPPORT TECHNIQUE PRÉSENTÉ À L ÉCOLE DE TECHNOLOGIE SUPÉRIEURE DANS LE CADRE DU COURS LOG792 PROJET DE FIN D ÉTUDES EN GÉNIE LOGICIEL PHP PROJECT TRACKER GESTIONNAIRE DE PROJECT LOGICIEL LOUIS-ALEXANDRE

Plus en détail

Manuel Utilisateur Signets (dont. Visionneurs)

Manuel Utilisateur Signets (dont. Visionneurs) Manuel Utilisateur Signets (dont Visionneurs) Auteur : CGI Version : 3.5 Droit d auteur Ce texte est disponible sous contrat Creative Commons Paternité Pas d Utilisation Commerciale Partage des Conditions

Plus en détail

MISE A JOUR : 04 FEVRIER 2011 PROCÉDURE D INSTALLATION. Cegid Business COMMENT INSTALLER CEGID BUSINESS V8 SOUS WINDOWS XP, VISTA ET 7

MISE A JOUR : 04 FEVRIER 2011 PROCÉDURE D INSTALLATION. Cegid Business COMMENT INSTALLER CEGID BUSINESS V8 SOUS WINDOWS XP, VISTA ET 7 PROCÉDURE D INSTALLATION Cegid Business V8 COMMENT INSTALLER CEGID BUSINESS V8 SOUS WINDOWS XP, VISTA ET 7 Sommaire 1. Introduction 2. Installation de SQL Server 2005 ou 2008 3. Installation de Cegid Business

Plus en détail

Conception et Implémentation

Conception et Implémentation I. INTRODUCTION Dans ce chapitre on va définir la conception de notre site web dynamique et nous expliquons les étapes de réalisation, les outils utilisés et l interface principale ainsi que les différentes

Plus en détail

Magento. Magento. Réussir son site e-commerce. Réussir son site e-commerce BLANCHARD. Préface de Sébastien L e p e r s

Magento. Magento. Réussir son site e-commerce. Réussir son site e-commerce BLANCHARD. Préface de Sébastien L e p e r s Mickaël Mickaël BLANCHARD BLANCHARD Préface de Sébastien L e p e r s Magento Préface de Sébastien L e p e r s Magento Réussir son site e-commerce Réussir son site e-commerce Groupe Eyrolles, 2010, ISBN

Plus en détail

Programmation du Web : Présentation du Web dynamique

Programmation du Web : Présentation du Web dynamique Programmation du Web : Présentation du Web dynamique Jean-Baptiste Vioix (Jean-Baptiste.Vioix@u-bourgogne.fr) IUT de Dijon-Auxerre - LE2I http://jb.vioix.free.fr 1-8 Présentation Nécessité du web dynamique

Plus en détail

Ce tutorial est un document pas à pas détaillé de la création et le déploiement d un domaine traitant sur :

Ce tutorial est un document pas à pas détaillé de la création et le déploiement d un domaine traitant sur : 1. Présentation 1.1.Introduction Ce tutorial est un document pas à pas détaillé de la création et le déploiement d un domaine traitant sur : Installation Active Directory. Configuration du DNS. Configuration

Plus en détail

Tsoft et Groupe Eyrolles, 2005, ISBN : 2-212-11623-3

Tsoft et Groupe Eyrolles, 2005, ISBN : 2-212-11623-3 Tsoft et Groupe Eyrolles, 2005, ISBN : 2-212-11623-3 Configuration requise ForestPrep DomainPrep Installation interactive 5 Installation sans surveillance Module 5 : Installation d Exchange Server 2003

Plus en détail

opencourrier Documentation

opencourrier Documentation opencourrier Documentation Version 4.0 openmairie 10 12 2014 Table des matières 1 Manuel de l utilisateur 3 1.1 Manuel de l utilisateur........................................ 3 1.1.1 Préambule..........................................

Plus en détail

BOSTONI Sacha NGUYEN Linh. Rapport de projet : Annuaire des anciens élèves

BOSTONI Sacha NGUYEN Linh. Rapport de projet : Annuaire des anciens élèves BOSTONI Sacha NGUYEN Linh Rapport de projet : Annuaire des anciens élèves Tuteur : Mr Muller Mai 2007 SOMMAIRE Introduction 1/ Les utilisateurs du site 2/ Les fonctionnalités 3/ La réalisation Conclusion

Plus en détail

IMA promotion 2009. Rapport de stage de première année. Stage industriel au Crédit du Nord

IMA promotion 2009. Rapport de stage de première année. Stage industriel au Crédit du Nord DUBRULLE Alain ENSEEIHT IMA promotion 2009 Rapport de stage de première année Stage industriel au Crédit du Nord Sommaire Présentation de l entreprise Le Crédit du Nord 3 La Direction des Systèmes d'information

Plus en détail

Rapport de stage en Entreprise

Rapport de stage en Entreprise Rapport de stage en Entreprise Laurie GIRY Année 2014 Période du : 05/01/15 au 09/01/15 BTS SIO 2ème Année Société Atiliom, Chambly, France. Page 1 sur 39 Sommaire : 1. Implantation géographique...page

Plus en détail

Rapport de stage. Création d un site web. Stage du 20/01/2013 au 21/02/2013

Rapport de stage. Création d un site web. Stage du 20/01/2013 au 21/02/2013 Rapport de stage Création d un site web Stage du 20/01/2013 au 21/02/2013 Auteur : Antoine Luczak Tuteur professionnel : M. Tison Tuteur scolaire : Mme Girondon Année scolaire : 2013/2014 1 Table des matières

Plus en détail

WEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES

WEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES WEB & DÉVELOPPEMENT LES BASES DU WEB HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES LE LANGAGE HTML STRUCTURE D UNE PAGE En-tête et corps Syntaxe INSÉRER DES CONTENUS Texte : formatage (titre,

Plus en détail

Apprendre à développer un site web avec PHP et MySQL Exercices pratiques et corrigés (2ième édition)

Apprendre à développer un site web avec PHP et MySQL Exercices pratiques et corrigés (2ième édition) Introduction 1. Objectif de l'ouvrage 13 2. Fonctionnement d un site web 13 Installation 1. Introduction 17 2. Installation d'easyphp 13.1 18 Les bases du langage PHP 1. Les balises 23 1.1 Syntaxe de base

Plus en détail

Zend Framework 2 Industrialisez vos développements PHP

Zend Framework 2 Industrialisez vos développements PHP Avant-propos 1. Lectorat 15 2. Contenu du livre 15 3. Pré-requis 17 Introduction 1. Un peu d histoire 19 1.1 Petite histoire de l informatique 19 1.2 Petite histoire des langages informatiques 20 1.3 Petite

Plus en détail

Manuel d installation. Version 1.1 11/07/2013

Manuel d installation. Version 1.1 11/07/2013 Manuel d installation Version 1.1 11/07/2013 Table des matières I. Description de la solution... 3 II. Installation... 3 a. Prérequis... 3 b. Installation de la base de données... 3 c. Mettre à jour les

Plus en détail

Joomla! Création et administration d'un site web - Version numérique

Joomla! Création et administration d'un site web - Version numérique Avant-propos 1. Objectifs du livre 15 1.1 Orientation 15 1.2 À qui s adresse ce livre? 16 2. Contenu de l ouvrage 17 3. Conclusion 18 Introduction 1. Un peu d histoire pour commencer... 19 1.1 Du web statique

Plus en détail

ACCESS 2013. Système de Gestion de Bases de Données Relationnelles

ACCESS 2013. Système de Gestion de Bases de Données Relationnelles Access est un logiciel permettant de gérer des données en masse : une liste de clients ou de fournisseurs, un stock de produits, des commandes, des salariés, un club de tennis, une cave à vin, une bibliothèque,

Plus en détail

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau)

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau) CS WEB Ch 1 Introduction I. INTRODUCTION... 1 A. INTERNET INTERCONNEXION DE RESEAUX... 1 B. LE «WEB» LA TOILE, INTERCONNEXION DE SITES WEB... 2 C. L URL : LOCALISER DES RESSOURCES SUR L INTERNET... 2 D.

Plus en détail

Etude et développement d un moteur de recherche

Etude et développement d un moteur de recherche Ministère de l Education Nationale Université de Montpellier II Projet informatique FLIN607 Etude et développement d un moteur de recherche Spécifications fonctionnelles Interface utilisateur Responsable

Plus en détail

1 Partie A : administration d une base de donnée à travers PhpMyAdmin

1 Partie A : administration d une base de donnée à travers PhpMyAdmin Ce TP se compose en 2 sections : une section de prise en main (sur ordinateur) et une section d exercice (sur papier) concernant l algèbre relationnelle. 1 Partie A : administration d une base de donnée

Plus en détail

ARTICLE : élément de «base» contenant texte et ressources diverses. Peut avoir plusieurs statuts (visible ou non publiquement, entre autres),

ARTICLE : élément de «base» contenant texte et ressources diverses. Peut avoir plusieurs statuts (visible ou non publiquement, entre autres), Terminologie ARTICLE : élément de «base» contenant texte et ressources diverses. Peut avoir plusieurs statuts (visible ou non publiquement, entre autres), RUBRIQUE : contenant d'articles et/ou de rubriques

Plus en détail

CREATION WEB DYNAMIQUE

CREATION WEB DYNAMIQUE CREATION WEB DYNAMIQUE IV ) MySQL IV-1 ) Introduction MYSQL dérive directement de SQL (Structured Query Language) qui est un langage de requêtes vers les bases de données relationnelles. Le serveur de

Plus en détail

TD1. Installation de Symfony 2 et Netbeans

TD1. Installation de Symfony 2 et Netbeans I - Introduction : TD1 Installation de Symfony 2 et Netbeans L objet de ce TP est d installer l environnement de travail. Nous commençons par définir des notions de base nécessaires pour comprendre la

Plus en détail

Cahier de Charge. Master I Informatique parcours Ingénierie Logiciels. E-Service Système d information web «Gestion des services ensignants

Cahier de Charge. Master I Informatique parcours Ingénierie Logiciels. E-Service Système d information web «Gestion des services ensignants Master I Informatique parcours Ingénierie Logiciels Projet : E-Service Gestions des Enseignements Groupe 06 Cahier de Charge E-Service Système d information web «Gestion des services ensignants 2011-2012

Plus en détail

Tutoriel Drupal «views»

Tutoriel Drupal «views» Tutoriel Drupal «views» Tutoriel pour la découverte et l utilisation du module Drupal «Views» 1 Dans ce tutoriel nous allons d abord voir comment se présente le module views sous Drupal 7 puis comment

Plus en détail

Asynchronous Mailing System. Jérôme Clet-Ortega François Broquedis Dave Tapesar Stéphanie Moreaud 12 janvier 2007

Asynchronous Mailing System. Jérôme Clet-Ortega François Broquedis Dave Tapesar Stéphanie Moreaud 12 janvier 2007 Asynchronous Mailing System Jérôme Clet-Ortega François Broquedis Dave Tapesar Stéphanie Moreaud 12 janvier 2007 1 2 Objectifs Asynchronous Mailing System (AMS) doit permettre de rédiger des mails sur

Plus en détail

Technologies du Web. Créer et héberger un site Web. Pierre Senellart. Page 1 / 26 Licence de droits d usage

Technologies du Web. Créer et héberger un site Web. Pierre Senellart. Page 1 / 26 Licence de droits d usage Technologies du Web Créer et héberger un site Web Page 1 / 26 Plan Planification Choisir une solution d hébergement Administration Développement du site Page 2 / 26 Cahier des charges Objectifs du site

Plus en détail

Personnaliser et adapter SPIP Développeur SPIP

Personnaliser et adapter SPIP Développeur SPIP Personnaliser et adapter SPIP Développeur SPIP En Théorie Le fonctionnement de SPIP Qu est ce que SPIP? SPIP (Système de Publication pour l Internet Partagé) est un logiciel libre destiné à la production

Plus en détail

Projet DataCity. Documentation Utilisateur. Version 4

Projet DataCity. Documentation Utilisateur. Version 4 Projet DataCity Documentation Utilisateur Version 4 Cyril Moralès Marc Soufflet Lionel Hamsou Cédric Merouani Cyntia Marquis Ryan Legasal Guillaume de Jabrun morale_c souffl_m hamsou_l meroua_c marqui_c

Plus en détail

Les procédures stockées et les fonctions utilisateur

Les procédures stockées et les fonctions utilisateur Les procédures stockées et les fonctions utilisateur Z Grégory CASANOVA 2 Les procédures stockées et les fonctions utilisateur [08/07/09] Sommaire 1 Introduction... 3 2 Pré-requis... 4 3 Les procédures

Plus en détail

Sage 100 CRM - Guide de l Import Plus Version 8. Mise à jour : 2015 version 8

Sage 100 CRM - Guide de l Import Plus Version 8. Mise à jour : 2015 version 8 Sage 100 CRM - Guide de l Import Plus Version 8 Mise à jour : 2015 version 8 Composition du progiciel Votre progiciel est composé d un boîtier de rangement comprenant : le cédérom sur lequel est enregistré

Plus en détail

Architectures web/bases de données

Architectures web/bases de données Architectures web/bases de données I - Page web simple : HTML statique Le code HTML est le langage de base pour concevoir des pages destinées à être publiées sur le réseau Internet ou intranet. Ce n'est

Plus en détail

Windows Installer ou l installation en un clic de souris

Windows Installer ou l installation en un clic de souris ou l installation en un clic de souris Par Benoit HAMET Consultant chez Avanade Introduction Si vous devez gérer les applications au sein de votre organisation, vous savez déjà que l installation, le support

Plus en détail

Extension Géoportail pour ez Publish

Extension Géoportail pour ez Publish Extension Géoportail pour ez Publish Aurélien FRANCES Institut Géographique National 2, Avenue Pasteur 94165 - Saint-Mande 15 décembre 2011 1 Présentation EZ Publish est un logiciel de gestion de contenu

Plus en détail

SEANCE 2 : REQUETES DE SELECTION & FORMULAIRES DE CONSULTATION

SEANCE 2 : REQUETES DE SELECTION & FORMULAIRES DE CONSULTATION SEANCE 2 : REQUETES DE SELECTION & FORMULAIRES DE CONSULTATION Année universitaire 20015-2016 Masters Économie Société - Finances Informatique appliquée SGBD Pierre-Henri GOUTTE La requête de sélection

Plus en détail

Plateforme PAYZEN. Définition de Web-services

Plateforme PAYZEN. Définition de Web-services Plateforme PAYZEN Définition de Web-services Ordre de paiement Version 1.1 Rédaction, Vérification, Approbation Rédaction Vérification Approbation Nom Date/Visa Nom Date/Visa Nom Date/Visa Lyra-Network

Plus en détail

Le client/serveur dans le cas du Web

Le client/serveur dans le cas du Web Le client/serveur dans le cas du Web Olivier Flauzac & Cyril Rabat olivier.flauzac@univ-reims.fr cyril.rabat@univ-reims.fr Licence 3 Info - Info0503 - Introduction à la programmation client/serveur 2015-2016

Plus en détail

Bases de données (INF225), TELECOM ParisTech. TP PHP & MySQL

Bases de données (INF225), TELECOM ParisTech. TP PHP & MySQL Bases de données (INF225), TELECOM ParisTech TP PHP & MySQL Pierre Senellart (pierre.senellart@telecom-paristech.fr) Bogdan Cautis (bogdan.cautis@telecom-paristech.fr) Ioana Ileana (ioana.ileana@telecom-paristech.fr)

Plus en détail

Rapport Gestion de projet

Rapport Gestion de projet IN56 Printemps 2008 Rapport Gestion de projet Binôme : Alexandre HAFFNER Nicolas MONNERET Enseignant : Nathanaël COTTIN Sommaire Description du projet... 2 Fonctionnalités... 2 Navigation... 4 Description

Plus en détail

WordPress : principes et fonctionnement

WordPress : principes et fonctionnement CHAPITRE 1 WordPress : principes et fonctionnement WordPress est à l origine un outil conçu pour tenir un blog, c est-à-dire un journal ou carnet de bord en ligne. Mais il a évolué pour devenir un système

Plus en détail