Master1 ère année. Réseaux avancés I. TP nº5 filière ISICG

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

Download "Master1 ère année. Réseaux avancés I. TP nº5 filière ISICG"

Transcription

1 Master1 ère année Réseaux avancés I TP nº5 filière ISICG Utilisation de la microplateforme Bottle et du framework AngularJS La «micro web-framework» Bottle pour Python Les principales caractèristiques : Routing : lien entre URLs dynamique et appels de fonctions ; Templating : intégration de template et support de bibliothèques externes de templating comme jinja ; Utilities : accès facilité aux données d un formulaire, à la transmission de fichier, aux cookies, et entêtes et méta-données HTTP ; Server : serveur intégré HTTP pour le développement et intégration possible dans des serveurs supportant le WSGI, «Web Server Gateway Interface», protocole permettant la communciation entre serveur Web et application externes ; disponible sur ; facile à installer : $ sudo apt-get install python-setuptools $sudo easy_install bottle Exemple d utilisation : 1 from bottle import route, run, template 4 def index(name='world'): 5 return template('<b>hello 6 {{name}}</b>!', name=name) 7 8 run(host='', port=8080, debug = True) Accès dans le navigateur : Utilisation de SQLite dans Python SQLite permet d utiliser un sous-ensemble de SQL pour gérer une BD réduite à un seul fichier. Il est très utilisé pour des applications légères et/ou embarquées (IOS, Android, etc.). Exemple tiré de : 1 #!/usr/bin/python 3 import sqlite3, sys 4 5 try: 6 connexion = sqlite3.connect('voitures.db') 7 cur = con.cursor() 8 cur.execute("create TABLE Cars(Id INT, Name TEXT, Price INT)") 9 cur.execute("insert INTO Cars VALUES(1,'Audi',564)") 10 cur.execute("insert INTO Cars VALUES(,'Mercedes',5717)") 11 cur.execute("insert INTO Cars VALUES(3,'Skoda',9000)") 1 cur.execute("insert INTO Cars VALUES(4,'Volvo',9000)") 13 cur.execute("insert INTO Cars VALUES(5,'Bentley',350000)") 14 cur.execute("insert INTO Cars VALUES(6,'Citroen',1000)") 15 cur.execute("insert INTO Cars VALUES(8,'Volkswagen',1600)") 16 connexion.commit() 17 connexion.close() 18 except sqlite3.error, message : 19 print message 0 sys.exit(1) Vous utiliserez ce programme pour remplir la BD pour l application d exemple. Pour consulter le contenu de la BD : Resp. UE : P-F. Bonnefoi, «TP nº5 filière ISICG» version du 17 novembre 014, rédigé avec ConTEXt Don t Panic! 1/6

2 1 #!/usr/bin/python 3 import sqlite3, sys 4 5 try: 6 connexion = sqlite3.connect('voitures.db') 7 8 cur = connexion.cursor() 9 cur.execute('select Id, Name, Price FROM Cars') 10 nom_colonnes = [d[0] for d in cur.description] 11 print nom_colonnes 1 for ligne in cur: 13 print ligne 14 connexion.close() 15 except sqlite3.error, message: 16 print message 17 sys.exit(1) Pour consulter le contenu de la BD et le traduire en représentation JSON : 1 #!/usr/bin/python 3 import sqlite3, json, sys 4 5 try: 6 connexion = sqlite3.connect('voitures.db') 7 8 cur = connexion.cursor() 9 cur.execute('select Id, Name, Price FROM Cars') nom_colonnes = [d[0] for d in cur.description] 1 table = [dict(zip(nom_colonnes, ligne)) for ligne in cur] 13 print json.dumps(table) except sqlite3.error, message: 16 print message 17 sys.exit(1) connexion.close() L affichage obtenu de la représentation JSON : [{"Price": 564, "Id": 1, "Name": "Audi"}, {"Price": 5717, "Id":, "Name": "Mercedes"}, {"Price": 9000, "Id": 3, "Name": "Skoda"}, {"Price": 9000, "Id": 4, "Name": "Volvo"}, {"Price": , "Id": 5, "Name": "Bentley"}, {"Price": 1000, "Id": 6, "Name": "Citroen"}, {"Price": 1600, "Id": 8, "Name": "Volkswagen"}] Utilisation d AngularJS AngularJS est un framework Javascript proposé par Google permettant de disposer d un MVC, «Model-View-Control». Il permet de : réaliser du «data-binding», c-à-d de lier dynamiquement des valeurs à leur représentation dans le navigateur Web : toute modification de l interface modifie les données et vice-versa ; d automatiser la création des éléments constituants l interface dans le navigateur ; de gérer les échanges entre l application serveur et l interface au travers du format d échange JSON ; d accrocher et de déclencher des événements lors de la modification des éléments (par exemple : déclencher l envoi d une requête HTTP lors de l appui d un bouton). Voici l arborescence d une application d exemple d utilisation :. -- creation_bd.py -- static -- gestion_voitures.html -- gestion_voitures.js -- voiture.py -- voitures.db Resp. UE : P-F. Bonnefoi, «TP nº5 filière ISICG» version du 17 novembre 014, rédigé avec ConTEXt Don t Panic! /6

3 Soit le contenu du fichier gestion_voitures.js 1 angular.module('voituresapp',['ui.bootstrap']); 3 function AfficherVoitures($scope,$rootScope,$http) { 4 $rootscope.infos = { voiture_selectionnee : "aucune", liste_voitures : '', 5 transmission : ''}; 6 $http.get("/liste_voitures").success(function(data) { 7 $rootscope.infos.liste_voitures = data; }); 8 transmettre = function() { 9 $http.get("/selectionner/"+$rootscope.infos.voiture_selectionnee).success(function() 10 { $rootscope.infos.transmission = "Ok"; }); 11 } 1 $scope.$watch('infos.voiture_selectionnee', transmettre); Ce fichier est à mettre dans le sous répertoire static. Explications : ligne 1 : le nom de l application AngularJs qui est repris dans la ligne 1 du document HTML associé et la liste des modules utilisés : ici les éléments d interface de ui.bootstrap ; ligne : on définit une fonction que l on va associer à un controlleur AngularJS (ligne 10 du document HTML associé) : en paramètres, on utilise des éléments d AngularJS : $scope : accès aux variables du «scope», c-à-d celles définies dans le contexte du controlleur AngularJS courant ; $rootscope : accès aux variables du «scope» racine, c-à-d en dehors de tous les controlleurs existants ; $http : accès aux requêtes http et récupération de contenu au format JSON ; ligne 4 : on défini un dictionnaire infos qui recevra : «liste_voitures» : un dictionnaire correspondant au contenu de la BD ; «voiture_selectionnee» : une variable d échange entre l interface et l application Web ; ligne 6 : on récupére le contenu de la BD au format JSON fournie par l application Web ; Ce contenu va être utilisé pour construire l interface dans le navigateur. ligne 8 : on crée une fonction qui sera appelée à chaque modification de la variable «infos.voiture_selectionnee» elle récupère le contenu de la variable modifiée ; elle le transmet à l application Web ; ligne 11 : le «watch» accroche la fonction précédente aux modifications de la variable. Soit le contenu du fichier gestion_voitures.html : 1 <html ng-app="voituresapp"> <head> 3 <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.0.7/angular.min.js"></script> 4 <script src="http://angular-ui.github.io/bootstrap/ui-bootstrap-tpls js"></script> 5 <link href="http://netdna.bootstrapcdn.com/twitter-bootstrap/.3.1/css/bootstrap-combined.min.css" 6 rel="stylesheet"> 7 <script src="static/gestion_voitures.js"></script> 8 </head> 9 <body> 10 <h1> Selectionner voiture </h1> 11 <div ng-controller="affichervoitures"> 1 <div class="btn-group"> 13 <button type="button" ng-repeat="voiture in infos.liste_voitures" 14 class="btn btn-primary" ng-model="infos.voiture_selectionnee" btn-radio="voiture.name"> 15 {{voiture.name}}</button> 16 </div> 17 <br/> 18 <tt>voiture selectionnee = {{infos.voiture_selectionnee}}</tt> 19 </br> 0 <tt>transmission = {{infos.transmission}}</tt> 1 <br/> <button type="button" ng-model="infos.voiture_selectionnee" btn-radio="'vide'">reset</button> 3 </div> 4 </body> 5 </html> Resp. UE : P-F. Bonnefoi, «TP nº5 filière ISICG» version du 17 novembre 014, rédigé avec ConTEXt Don t Panic! 3/6

4 Ce fichier est à mettre dans le sous répertoire static. Explications : ligne 1 : on associe un élément du DOM, «Document Object Model», à l application AngularJS (ligne 1 du fichier javascript précédent) ; ligne 3, 4, 5 : on récupère les fichiers Javascript mettant en œuvre le framework AngularJS ; ligne 6 : on inclus le fichier javascript précédent ; ligne 10 : on définit le controlleur qui va automatiquement s associer à la fonction de la ligne 3 du fichier javascript précédent ; ligne 11 : on définie un groupe de boutons et on utilise l opération AngularJS «ng-repeat» pour créer automatiquement les boutons dans le groupe : le «ng-repeat» parcours la table javascript contenu dans la variable «infos.liste_voitures» et associe la variable «voiture» à une case du tableau (pour rappel, une ligne du tableau correspond à une ligne de la BD, c-à-d, les champs «Id», «Name» et «Price» d un enregistrement voiture) et va créer, pour chaque ligne, un bouton : le bouton courant va récupérer comme label le nom de la voiture (champs Name) ; le bouton va modifier la variable indiquée par «ng-model», «infos.voiture_selectionnee», en lui affectant, lorsqu il sera activé, la valeur courante «voiture.name» ; ligne 17 : on affiche le contenu de la variable «infos.voiture_selectionnee» qui est modifée par un bouton de l interface ; ligne 18 : on affiche le contenu de la variable «infos.transmission» qui est modifié dans le fichier javascript. Le contenu programme Python associé voiture.py : 1 #!/usr/bin/python # encoding=utf import commands, sqlite3, json 5 from bottle import route, run, static_file 6 7 table_voitures = None 8 10 def renvoyer_liste_voitures(): 11 return json.dumps(table_voitures) 1 13 def recuperer_liste_voitures(): 14 global table_voitures 15 connexion = sqlite3.connect('voitures.db') 16 curseur = connexion.cursor() 17 curseur.execute('select Id, Name, Price FROM Cars') 18 nom_colonnes = [d[0] for d in curseur.description] 19 table_voitures = [dict(zip(nom_colonnes, ligne)) for ligne in curseur] 0 print table_voitures 3 def accueil(): 4 return static_file('gestion_voitures.html',root='static/') 5 7 def selectionner_voiture(nom): 8 print "Voiture selectionnee :",nom 9 return {} 30 3 def static(filename): 33 return static_file(filename, root='static/') recuperer_liste_voitures() 36 run(host='', port=8080, debug=true) Explications : ligne 9 : une «décoration» permet d associer une URL à une fonction Python : ici la récupération au format JSON du contenu de la table ; ligne 13 : une fonction exécutée une seule fois pour récupérer le contenu de la BD et le fournir en JSON ; ligne : la «racine» du site ; Resp. UE : P-F. Bonnefoi, «TP nº5 filière ISICG» version du 17 novembre 014, rédigé avec ConTEXt Don t Panic! 4/6

5 ligne 6 : on récupére le paramètre passé dans une URL sous la forme d un chemin de ressource et on le transmets à la fonction Python associée ; ligne 31 : on fournit de manière transparente les ressources du répertoire «static» au client Web (ressources CSS, images, fichier javascript). Utilisation de MongoDB MongoDB est une base de données «NoSQL», c-à-d «Not Only SQL» : les contraintes strictes liées aux bases de données relationnelles SQL sont relâchées voire, pour certaines, supprimées. Le but recherché est de permettre au développeur de définir le modèle de données qui correspond le mieux à flux de données dans son application. MongoDB : est basé sur un modèle de documents où les objets contenant des données sont stockés dans une collection ; offre des bonnes performances, une haute disponibilité et une extensibilité automatique ; utilise une représentation des données basées sur JSON : voiture = {"Name": "Audi", "Id": 1, "Price": 564} Pour son utilisation dans Python : il faut installer MongoDB sudo apt-get install mongodb ; pour lancer MongoDB dans son répertoire personnel /home/toto/bd : mongod --dbpath /BD ; pour stopper MongoDB : mongo MongoDB shell version:.4.9 connecting to: test Welcome to the MongoDB shell. For interactive help, type "help". For more comprehensive documentation, see Questions? Try the support group Server has startup warnings: Tue Nov 11 10:56: [initandlisten] Tue Nov 11 10:56: [initandlisten] ** NOTE: This is a 3 bit MongoDB binary. Tue Nov 11 10:56: [initandlisten] ** with --journal). Tue Nov 11 10:56: [initandlisten] ** Tue Nov 11 10:56: [initandlisten] > use admin switched to db admin > db.shutdownserver() Tue Nov 11 10:59:10.4 DBClientCursor::init call() failed server should be down... Tue Nov 11 10:59:10.5 trying reconnect to :7017 Tue Nov 11 10:59:10.5 reconnect :7017 ok 3 bit builds are limited to less than GB of data (or less See Tue Nov 11 10:59:10.7 Socket recv() errno:104 Connection reset by peer :7017 Tue Nov 11 10:59:10.7 SocketException: remote: :7017 error: 9001 socket exception [RECV_ERROR] server [ :7017] Tue Nov 11 10:59:10.7 DBClientCursor::init call() failed > il faut disposer du module Python pymongo sudo easy_install pymongo ; Pour l utilisation dans Python : Resp. UE : P-F. Bonnefoi, «TP nº5 filière ISICG» version du 17 novembre 014, rédigé avec ConTEXt Don t Panic! 5/6

6 python Python.7.6 (default, Mar 014, :59:38) [GCC 4.8.] on linux Type "help", "copyright", "credits" or "license" for more information. >>> from pymongo import MongoClient >>> c=mongoclient() Tue Nov 11 11:05: [initandlisten] connection accepted from :5013 #1 (1 connection now open) # pour créer la BD ou s'y connecter >>> db = c['voitures-db'] # obtenir une collection ou la créer (~ table dans SQL) >>> mes_voitures = db['voitures'] # pour insérer un enregistrement >>> une_voiture = mes_voitures.insert({"name": "Audi","Id": 1,"Price": 564}) Tue Nov 11 11:09:1.333 [FileAllocator] allocating new datafile /home/pef/bd/voitures-db.ns, filling with zeroes... Tue Nov 11 11:09:1.334 [FileAllocator] creating directory /home/pef/bd/_tmp Tue Nov 11 11:09:1.335 [FileAllocator] done allocating datafile /home/pef/bd/voitures-db.ns, size: 16MB, 0 secs Tue Nov 11 11:09:1.335 [FileAllocator] allocating new datafile /home/pef/bd/voitures-db.0, filling with zeroes... Tue Nov 11 11:09:1.336 [FileAllocator] done allocating datafile /home/pef/bd/voitures-db.0, size: 16MB, 0 secs Tue Nov 11 11:09:1.339 [conn1] build index voitures-db.voitures { _id: 1 } Tue Nov 11 11:09:1.339 [FileAllocator] allocating new datafile /home/pef/bd/voitures-db.1, filling with zeroes... Tue Nov 11 11:09:1.339 [conn1] build index done. scanned 0 total records. 0 secs Tue Nov 11 11:09:1.341 [FileAllocator] done allocating datafile /home/pef/bd/voitures-db.1, size: 3MB, 0 secs >>> une_voiture ObjectId('5461e048341e763159a746e') # toutes les collections de la BD >>> db.collection_names() [u'system.indexes', u'voitures'] # faire une requête >>> mes_voitures.find_one({"name" : "Audi"}) {u'price': 564, u'_id': ObjectId('5461e048341e763159a746e'), u'name': u'audi', u'id': 1} # parcourir la liste des enregistrements de la collection (ou d'une requête) >>> for v in mes_voitures.find():... v... {u'price': 564, u'_id': ObjectId('5461e048341e763159a746e'), u'name': u'audi', u'id': 1} # obtenir le nombre d'enregistrements de la collection (~table) >>> mes_voitures.count() 1 # obtenir le nombre d'enregistrements d'une requête >>> mes_voitures.find().count() 1 # Pour passer d'un identifiant chaine de caractères vers ObjectId >>> from bson.objectid import ObjectId >>> rep_chaine = str(une_voiture) >>> rep_chaine '5461e048341e763159a746e' >>> ObjectId(rep_chaine) ObjectId('5461e048341e763159a746e') >>> mes_voitures.find_one({"_id": ObjectId(rep_chaine)}) {u'price': 564, u'_id': ObjectId('5461e048341e763159a746e'), u'name': u'audi', u'id': 1} >>> Plus de détails peuvent être obtenus sur Travail demandé 1 Passage de SQL à NoSQL : a. Mettre en œuvre la version de l application basée sur SQLite. b. Adapter cette version à l utilisation de MongoDB à la place de SQLite. Étendre le programme proposé pour permettre : a. l inclusion d une image pour chaque voiture ; b. l affichage du prix de la voiture dans l interface ; c. un bouton de réservation avec une mise à jour de la BD et de l interface. took took took Resp. UE : P-F. Bonnefoi, «TP nº5 filière ISICG» version du 17 novembre 014, rédigé avec ConTEXt Don t Panic! 6/6

Installation de MongoDB 1.6.2 sur windows xp2 x86. La version 32 bits de MongoDB a une limitation de stockage de 2 Go.

Installation de MongoDB 1.6.2 sur windows xp2 x86. La version 32 bits de MongoDB a une limitation de stockage de 2 Go. Installation de MongoDB 1.6.2 sur windows xp2 x86 Avant propos La version 32 bits de MongoDB a une limitation de stockage de 2 Go. http://blog.mongodb.org/post/137788967/32-bit-limitations. Hardware Je

Plus en détail

Technologies Web avancées. Technologies Web avancées

Technologies Web avancées. Technologies Web avancées Technologies Web avancées Objectif Appréhender trois outils complexes 1. Rappel MVC 2. ExtJS 3. NodeJS 4. NoSQL Sommaire 5. ExtJS + NodeJS + MongoDB 1 MVC a Théorie MVC Model View Controller Modèle vue

Plus en détail

Réalisation d un portail captif d accès authentifié à Internet 10.10.10.1

Réalisation d un portail captif d accès authentifié à Internet 10.10.10.1 Master 1 ère année UE Réseaux avancés I Projet Réalisation d un portail captif d accès authentifié à Internet Présentation du projet Le but du projet est de mettre en place un portail captif permettant

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

Programmation Web. Thierry Hamon

Programmation Web. Thierry Hamon 1/27 Programmation Web Thierry Hamon Bureau H202 - Institut Galilée Tél. : 33 1.48.38.35.53 Bureau 150 LIM&BIO EA 3969 Université Paris 13 - UFR Léonard de Vinci 74, rue Marcel Cachin, F-93017 Bobigny

Plus en détail

LES SCRIPTS CGI. Présentation Mise en œuvre La programmation Les variables d environnement

LES SCRIPTS CGI. Présentation Mise en œuvre La programmation Les variables d environnement LES SCRIPTS CGI Présentation Mise en œuvre La programmation Les variables d environnement LES SCRIPTS CGI Présentation Mise en œuvre La programmation Les variables d environnement OBJECTIFS Historiquement,

Plus en détail

Technologies Web. Ludovic Denoyer Sylvain Lamprier Mohamed Amine Baazizi Gabriella Contardo Narcisse Nya. Université Pierre et Marie Curie

Technologies Web. Ludovic Denoyer Sylvain Lamprier Mohamed Amine Baazizi Gabriella Contardo Narcisse Nya. Université Pierre et Marie Curie 1 / 22 Technologies Web Ludovic Denoyer Sylvain Lamprier Mohamed Amine Baazizi Gabriella Contardo Narcisse Nya Université Pierre et Marie Curie Rappel 2 / 22 Problématique Quelles technologies utiliser

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

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

Bases de données et Sites Web. Li345

Bases de données et Sites Web. Li345 Bases de données et Sites Web. Li345 Remerciements à: Stéphane Gançarski et Philippe Rigaux. Ces transparents sont fortement inspirés du très bon livre : Pratique de MySQL et PHP, troisième édition Philippe

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

Servlets, beans, base de données

Servlets, beans, base de données Institut Galilée E-services Année 2014-2015 Master 2 T.P. 2 Servlets, beans, base de données L objectif de ce TP est de mettre en place un site web pour l administration et la commande de pizzas : une

Plus en détail

DJANGO RETOUR D EXPÉRIENCE

DJANGO RETOUR D EXPÉRIENCE DJANGO RETOUR D EXPÉRIENCE Journées rbdd 2013 Caroline Bligny 1 PROJET INITIAL Structure transverse Maimosine Base des formations en Mysql Affichage des données sur un site public en Drupal Besoin : interface

Plus en détail

la réalisation d'un site d'inscriptions

la réalisation d'un site d'inscriptions Rapport du projet la réalisation d'un site d'inscriptions Réaliser par : Fatimaezzahra Yazough Année :2014 /2015 1/9 Yazough INTRODUCTION Le but de ce projet et de réaliser une maquette de site web pour

Plus en détail

NoSql. Principes. Google (Map Reduce, Big Table) et Amazone (Dynamo) pour faire face à la monté en charge liée au BigData

NoSql. Principes. Google (Map Reduce, Big Table) et Amazone (Dynamo) pour faire face à la monté en charge liée au BigData NoSql Principes Google (Map Reduce, Big Table) et Amazone (Dynamo) pour faire face à la monté en charge liée au BigData Les SGBD NoSql partagés ne peuvent satisfaire que 2 critères au plus NoSql Les transactions

Plus en détail

DEVELOPPEMENT LOGICIEL

DEVELOPPEMENT LOGICIEL DEVELOPPEMENT LOGICIEL LE FRAMEWORK WEB RUBY ON RAIL REF : WELA010 DUREE : 4 JOURS TARIF : 2 060 HT Public Développeurs d applications web, Chefs de projet techniques, Architectes. Pré-requis Programmation

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

Technologies Web. Farah Benamara Zitoune Maître de conférences IRIT-UPS benamara@irit.fr

Technologies Web. Farah Benamara Zitoune Maître de conférences IRIT-UPS benamara@irit.fr Technologies Web Farah Benamara Zitoune Maître de conférences IRIT-UPS benamara@irit.fr Plan du cours Cours 1 : Introduction HTML/CSS Cours 2 : Introduction programmation web + javascirpt Cours 3 : Introduction

Plus en détail

Plan. Environnement Client/Serveur. Cours 7 JavaServer Pages (1) JSP. Programmation Web coté serveur

Plan. Environnement Client/Serveur. Cours 7 JavaServer Pages (1) JSP. Programmation Web coté serveur Plan Environnement Client/Serveur Cours 7 JavaServer Pages (1) kn@lri.fr 7.1 Principe 7.2 Rappels HTTP 7.3 Le serveur web Tomcat Programmation Web coté serveur JSP 2/28 (rappel) génération de pages-web

Plus en détail

TP MongoDB. -d : définit le nom de la base où l'on souhaite importer les données

TP MongoDB. -d : définit le nom de la base où l'on souhaite importer les données TP MongoDB MongoDB est l une des base de données composant le mouvement NoSQL (Not Only SQL). L intérêt de ce genre de bases de données se ressent dans la manipulation de très grosses bases de données

Plus en détail

AngularJS Développez aujourd'hui les applications web de demain

AngularJS Développez aujourd'hui les applications web de demain Avant-propos 1. Pourquoi ce livre? 11 2. À qui s'adresse cet ouvrage? 12 3. Structure de l'ouvrage 12 4. Remerciements 13 Introduction à AngularJS 1. Introduction 15 2. Single Page Application 16 3. AngularJS

Plus en détail

Play! Framework. We are Reactive!

Play! Framework. We are Reactive! Play! Framework We are Reactive! Aujourd hui Que favorise les nouveaux frameworks web? Aujourd hui Que favorise les nouveaux frameworks web? 1. Asynchrone 2. Stateless 3. Légèreté Aujourd hui Quels sont

Plus en détail

Master1 ère année. Réseaux avancés I. Projet

Master1 ère année. Réseaux avancés I. Projet Master1 ère année Réseaux avancés I Projet Réalisation d un portail captif d accès authentifié à Internet Présentation du projet Le but du projet est de mettre en place un portail captif permettant : à

Plus en détail

PHP/MySQL. École Nationale Supérieure des Mines de Nancy 2nde Année

PHP/MySQL. École Nationale Supérieure des Mines de Nancy 2nde Année Bases de Données et Ingénierie des Systèmes d Information 1 PHP/MySQL École Nationale Supérieure des Mines de Nancy 2nde Année Table des matières I PHP 2 1 Les bases 2 1.1 Introduction........................................

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

Dojo partie 1. Widgets dojo.form Validation des formulaires Côté client Côté serveur Requêtes Ajax

Dojo partie 1. Widgets dojo.form Validation des formulaires Côté client Côté serveur Requêtes Ajax Dojo partie 1 Widgets dojo.form Validation des formulaires Côté client Côté serveur Requêtes Ajax 1 Modules Dojo 3 espaces de noms principaux: dojo: bibliothèque de base dijit: bibliothèque de widgets

Plus en détail

Présentation du périmètre technique

Présentation du périmètre technique Présentation du périmètre technique Kit d intégration des fonctions de réservation Open System au sein d un site d information Alliance Réseaux v09012014 1 KIT D INTEGRATION DES FONCTIONS DE RESERVATION

Plus en détail

Principales failles de sécurité des applications Web Principes, parades et bonnes pratiques de développement

Principales failles de sécurité des applications Web Principes, parades et bonnes pratiques de développement Guillaume HARRY l Contenu sous licence Creative Commons CC-BY-NC-ND Principales failles de sécurité des applications Web Principes, parades et bonnes pratiques de développement P. 2 1. Introduction 2.

Plus en détail

Module Com231A - Web et Bases de Données Notion 5 : Formulaires et utilisation des Bases de Données avec PHP

Module Com231A - Web et Bases de Données Notion 5 : Formulaires et utilisation des Bases de Données avec PHP Module Com231A - Web et Bases de Données Notion 5 : Formulaires et utilisation des Bases de Données avec PHP Au cours de ce TP, vous allez voir comment PHP permet aux utilisateurs, une interaction avec

Plus en détail

PHP /MySQL Interface d'accès aux BDDs PDO. Youssef CHAHIR

PHP /MySQL Interface d'accès aux BDDs PDO. Youssef CHAHIR PHP /MySQL Interface d'accès aux BDDs PDO Youssef CHAHIR 1 PLAN Architecture Interface phpmyadmin Créer une interface PHP/MySQL : Établir une connexion Exécuter une requête Gérer les erreurs Exploiter

Plus en détail

Systèmes d'informations

Systèmes d'informations Systèmes d'informations C'est un ensemble d'outils pour stocker / gérer / diffuser des informations / des données Le stockage : Bases de données + SGDBR La gestion : Saisie, Mise à jour, Contrôle La diffusion

Plus en détail

Documents web dynamiques. 20 novembre 2007 Architecture Multi-Niveaux 54

Documents web dynamiques. 20 novembre 2007 Architecture Multi-Niveaux 54 Documents web dynamiques 20 novembre 2007 Architecture Multi-Niveaux 54 Documents web dynamiques Contenu Statique Le client envoie une requête avec un nom de fichier Le serveur répond en lui retournant

Plus en détail

Premières applications. Web 2.0. avec Ajax et PHP. J e a n - M a r i e D e f r a n c e. Groupe Eyrolles, 2008, ISBN : 978-2-212-12090-5

Premières applications. Web 2.0. avec Ajax et PHP. J e a n - M a r i e D e f r a n c e. Groupe Eyrolles, 2008, ISBN : 978-2-212-12090-5 Premières applications Web 2.0 avec Ajax et PHP J e a n - M a r i e D e f r a n c e Groupe Eyrolles, 2008, ISBN : 978-2-212-12090-5 8 Applications Ajax-PHP synchrones Pour commencer simplement, je vous

Plus en détail

PHP et mysql. Code: php_mysql. Olivier Clavel - Daniel K. Schneider - Patrick Jermann - Vivian Synteta Version: 0.9 (modifié le 13/3/01 par VS)

PHP et mysql. Code: php_mysql. Olivier Clavel - Daniel K. Schneider - Patrick Jermann - Vivian Synteta Version: 0.9 (modifié le 13/3/01 par VS) PHP et mysql php_mysql PHP et mysql Code: php_mysql Originaux url: http://tecfa.unige.ch/guides/tie/html/php-mysql/php-mysql.html url: http://tecfa.unige.ch/guides/tie/pdf/files/php-mysql.pdf Auteurs et

Plus en détail

Les solutions de paiement CyberMUT (Crédit Mutuel) et P@iement CIC. Qui contacter pour commencer la mise en place d une configuration de test?

Les solutions de paiement CyberMUT (Crédit Mutuel) et P@iement CIC. Qui contacter pour commencer la mise en place d une configuration de test? Les solutions de paiement CyberMUT (Crédit Mutuel) et P@iement CIC Qui contacter pour commencer la mise en place d une configuration de test? CyberMUT Paiement - Paiement CIC Commerce Electronique mailto:centrecom@e-i.com

Plus en détail

Bases de Données et Internet

Bases de Données et Internet Informatique S6 3A Bases de Données et Internet Python: SGBD et CGI Alexis NEDELEC LISYC EA 3883 UBO-ENIB-ENSIETA Centre Européen de Réalité Virtuelle Ecole Nationale d Ingénieurs de Brest enib c 2008

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

WDpStats Procédure d installation

WDpStats Procédure d installation WDpStats Procédure d installation Table de matières WDpStats... 1 Procédure d installation... 1 Table de matières... 1 Résumé... 2 Réquisits... 2 Installation... 2 Difficultés... 6 Lancement... 7 wdpstats_install_oracle_fr.xml

Plus en détail

Programmation Android TP7 - WebServices

Programmation Android TP7 - WebServices 1. WebService Dans le TP6, les avis étaient stockés dans une base SQL. Cette semaine les n-uplets sont stockés sur une base de données externe gérée par un serveur HTTP sur lequel tournent des scripts

Plus en détail

Micro-ordinateurs, informations, idées, trucs et astuces. Utiliser les services de fichiers

Micro-ordinateurs, informations, idées, trucs et astuces. Utiliser les services de fichiers Micro-ordinateurs, informations, idées, trucs et astuces Utiliser les services de fichiers Auteur : François CHAUSSON Date : 8 février 2008 Référence : utiliser les services de fichiers.doc Préambule Voici

Plus en détail

Résoudre les problèmes PHP, les meilleures (et les pires) techniques

Résoudre les problèmes PHP, les meilleures (et les pires) techniques Résoudre les problèmes PHP, les meilleures (et les pires) techniques Xavier Gorse Architecte - Expert PHP (ELAO) xavier.gorse@elao.com Un peu d ordre dans la maison! Toutes les lignes téléphoniques sont

Plus en détail

TP JAVASCRIPT OMI4 TP5 SRC1 2011-2012

TP JAVASCRIPT OMI4 TP5 SRC1 2011-2012 TP JAVASCRIPT OMI4 TP5 SRC1 2011-2012 FORMULAIRE DE CONTACT POUR PORTFOLIO PRINCIPE GENERAL Nous souhaitons réaliser un formulaire de contact comprenant les champs suivants : NOM PRENOM ADRESSE MAIL MESSAGE

Plus en détail

Programmation Web. Sites dynamiques et bases de données. Mathieu Lacroix. I.U.T. de Villetaneuse. Année 2015-2016

Programmation Web. Sites dynamiques et bases de données. Mathieu Lacroix. I.U.T. de Villetaneuse. Année 2015-2016 Programmation Web Sites dynamiques et bases de données Mathieu Lacroix I.U.T. de Villetaneuse Année 2015-2016 E-mail : mathieu.lacroix@iutv.univ-paris13.fr Page Web : http: // www-lipn. univ-paris13. fr/

Plus en détail

Guide de l utilisateur WebSeekurity

Guide de l utilisateur WebSeekurity SCRT Information Security Julia Benz Guide de l utilisateur WebSeekurity Version 1.0 Mars 2012 Table des matières Table des matières i 1 Introduction 1 1.1 Contributions.............................. 1

Plus en détail

Maarch Framework 3 - Maarch. Tests de charge. Professional Services. http://www.maarch.fr. 11, bd du Sud Est 92000 Nanterre

Maarch Framework 3 - Maarch. Tests de charge. Professional Services. http://www.maarch.fr. 11, bd du Sud Est 92000 Nanterre Maarch Professional Services 11, bd du Sud Est 92000 Nanterre Tel : +33 1 47 24 51 59 Fax : +33 1 47 24 54 08 Maarch Framework 3 - Maarch PS anime le développement d un produit d archivage open source

Plus en détail

Gestion d identités PSL Exploitation IdP Authentic

Gestion d identités PSL Exploitation IdP Authentic Gestion d identités PSL Exploitation IdP Authentic Entr ouvert SCOP http ://www.entrouvert.com Table des matières 1 Arrêt et démarrage 2 2 Configuration 2 2.1 Intégration à la fédération............................

Plus en détail

Secteur Tertiaire Informatique Filière étude - développement. Développer des composants d interface Créer des formulaires de saisie

Secteur Tertiaire Informatique Filière étude - développement. Développer des composants d interface Créer des formulaires de saisie Secteur Tertiaire Informatique Filière étude - développement. Développer des composants d interface Créer des formulaires de saisie JAVASCRIPT JS08-Gestion des cookies-consignes Accueil Apprentissage Période

Plus en détail

Sécurité d un site php

Sécurité d un site php Sensibilisation IUT de Fontainebleau 8 juin 2015 1 2 1 2 Enjeux L application manipulent-ils des données fiables? L application interagit-elle avec le bon interlocuteur? Le secret des données échangées

Plus en détail

3. Formulaires. Cours Web. Formulaires. 3. Formulaires. 3. Formulaires. Formulaires. Lionel Seinturier. Université Pierre & Marie Curie

3. Formulaires. Cours Web. Formulaires. 3. Formulaires. 3. Formulaires. Formulaires. Lionel Seinturier. Université Pierre & Marie Curie Cours Web Formulaires Lionel Seinturier Université Pierre & Marie Curie Lionel.Seinturier@lip6.fr 8/9/03 Formulaires HTML 1.0 essentiellement "mono"-directionnel informations fournies par le serveur (suite

Plus en détail

KompoZer. Td3. M r Castanet - Année scolaire 2007/2008 - page 1

KompoZer. Td3. M r Castanet - Année scolaire 2007/2008 - page 1 KompoZer Td3 M r Castanet - Année scolaire 2007/2008 - page 1 Exercice 1 Dans cet exercice, nous allons appréhender les méthodes pour transférer notre site chez un hébergeur. Mais nous déplacerons notre

Plus en détail

Le framework Symfony2

Le framework Symfony2 Le framework Symfony2 Historique et définition Framework: cadre de travail Objectif: améliorer la productivité des développeurs (se concentrer sur les choses importantes), structurer l application, accélère

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

Comment Accéder à des Bases de Données MySQL avec Windows lorqu'elles sont sur un Serveur Linux

Comment Accéder à des Bases de Données MySQL avec Windows lorqu'elles sont sur un Serveur Linux Comment Accéder à des Bases de Données MySQL avec Windows lorqu'elles sont sur un Serveur Linux Distribué par Le Projet Documentation d'openoffice.org Table of Contents 1) Préambule...3 2) Télécharger

Plus en détail

Soon_AdvancedCache. Module Magento SOON. Rédacteur. Relecture & validation technique. Historique des révisions

Soon_AdvancedCache. Module Magento SOON. Rédacteur. Relecture & validation technique. Historique des révisions Module Magento SOON Soon_AdvancedCache Rédacteur Hervé G. Lead développeur Magento herve@agence-soon.fr AGENCE SOON 81 avenue du Bac 94210 LA VARENNE ST HILAIRE Tel : +33 (0)1 48 83 95 96 Fax : +33 (0)1

Plus en détail

Système de vote interactif

Système de vote interactif Année 2014-2015 Rapport de projet EI4 AGI Système de vote interactif Projet réalisé par : BELLAJ MEHDI LABCHARA OMAR Projet Encadré par : Mehdi Lhommeau ISTIA Université d Angers REMERCIEMENTS Tout d abord,

Plus en détail

Auteur LARDOUX Guillaume Contact guillaume.lardoux@epitech.eu Année 2014 DEVELOPPEMENT MOBILE AVEC CORDOVA

Auteur LARDOUX Guillaume Contact guillaume.lardoux@epitech.eu Année 2014 DEVELOPPEMENT MOBILE AVEC CORDOVA Auteur LARDOUX Guillaume Contact guillaume.lardoux@epitech.eu Année 2014 DEVELOPPEMENT MOBILE AVEC CORDOVA Sommaire 1. Introduction 2. Installation 3. Fonctionnement 4. Développement 5. Démonstration 2

Plus en détail

Services Web SOAP & REST avec symfony

Services Web SOAP & REST avec symfony Services Web SOAP & REST avec symfony RMLL - 6 juillet 2010 Qui suis-je? Hugo HAMON Responsable des formations chez Sensio Labs Coauteur et contributeur d ouvrages Secrétaire Général de l AFUP Webmaster

Plus en détail

10.10.10.1 / / Routeur [HOSTA: 10.10.10.10] [HOSTB: 10.10.10.11]

10.10.10.1 / / Routeur [HOSTA: 10.10.10.10] [HOSTB: 10.10.10.11] Master 1ère année Réseaux avancés I Projet Réalisation d un portail captif d accès authentifié à Internet Présentation du projet Le but du projet est de mettre en place un portail captif permettant : à

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

Manuel d intégration du service AByster

Manuel d intégration du service AByster Manuel d intégration du service AByster PHP API Version 1.0 11 février 2013 www.abyster.com 1 Table des matières 01. Objet... 3 02. Définitions... 3 03. Introduction... 4 04. Le Core... 5 04.1 Organisation

Plus en détail

Mailing. Requêtes Initiation. Version 1.00 du 11.04.2006. Distribué par le projet fr.openoffice.org

Mailing. Requêtes Initiation. Version 1.00 du 11.04.2006. Distribué par le projet fr.openoffice.org Mailing Requêtes Initiation Version 1.00 du 11.04.2006 Réalisé avec : OOo 2.0 Plate-forme / Os : Toutes Distribué par le projet fr.openoffice.org Table des matières 1Création d'une requête de sélection

Plus en détail

L3 - Sites Web dynamiques : Mini-Wall MINI-WALL

L3 - Sites Web dynamiques : Mini-Wall MINI-WALL L3 - SITES WEB DYNAMIQUES MINI-WALL 1 Introduction L'objectif de ce TD est de mettre en place un mini "livre d'or", permettant à vos visiteurs de vous laisser des messages sur votre site. Une page affiche

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

1. Base de données SQLite

1. Base de données SQLite Dans ce TP, nous allons voir comment créer et utiliser une base de données SQL locale pour stocker les informations. La semaine prochaine, ça sera avec un WebService. On repart de l application AvosAvis

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

BD50. Gestion des courses

BD50. Gestion des courses Département Génie Informatique BD50 TP7 : Développement avec le module PL/SQL de 9iAS et DBMS_EPG d'oracle 10G Gestion des courses Françoise HOUBERDON & Christian FISCHER Copyright Mai 2007 Présentation

Plus en détail

Installation de Shinken

Installation de Shinken Installation de Shinken Shinken a besoin d un utilisateur pour fonctionner. adduser m shinken On passe à l installation des dépendances python nécessaire à l installation apt-get install python-pycurl

Plus en détail

Introduction à la conception de sites web

Introduction à la conception de sites web Introduction à la conception de sites web Yannick Prié UFR Informatique Université Claude Bernard Lyon 1 9-16 janvier 2006 1- Les grands principes du web (1) Client / serveur réseau programmes communicants

Plus en détail

Pages Web dynamiques et bases de données

Pages Web dynamiques et bases de données Cours 2 Pages Web dynamiques et bases de données Une page Web dynamique est générée automatiquement grâce à l exécution d un script (PHP par exemple). C est le résultat de l exécution de ce script (code

Plus en détail

Objectifs. Comprendre l architecture typique d une application web Exemple: Expérimenter avec:

Objectifs. Comprendre l architecture typique d une application web Exemple: Expérimenter avec: Cedric Dumoulin Objectifs Comprendre l architecture typique d une application web Exemple: Application permettant de lister un catalogue d articles, et de créer des articles Expérimenter avec: EJB, JPA

Plus en détail

Cours 1 Premiers pas avec jquery : sélecteurs et modifieurs

Cours 1 Premiers pas avec jquery : sélecteurs et modifieurs Licence STIC IUT de Marne-la-Vallée 12/03/2015 Cours de jquery Cours 1 Premiers pas avec jquery : sélecteurs et modifieurs Philippe Gambette Organisation pratique Contact - Courriel : philippe.gambette@gmail.com

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

Projet de fin d étude

Projet de fin d étude Projet de fin d étude Émargement électronique Département Informatique, Microélectronique, Automatique Polytech Lille, Villeneuve D Ascq Nom de l école : Soutenu par : Josué Rukata-Maroy Vincenti Jean-Marie

Plus en détail

Langages et technologies du Web 1

Langages et technologies du Web 1 Langages et technologies du Web 1 Manuel ATENCIA manuel.atencia-arcas@upmf-grenoble.fr Objectifs Comprendre le fonctionnement du World Wide Web Produire des documents web statiques et dynamiques 1 2 vocabulaire

Plus en détail

Apprenez les langages HTML5, CSS3 et JavaScript pour créer votre premier site web

Apprenez les langages HTML5, CSS3 et JavaScript pour créer votre premier site web Le Web 1. Qu est-ce que le Web? 7 1.1 Côté serveur : HTTP, FTP, langages, SQL 7 1.2 Côté client : HTML, CSS, JavaScript 10 2. Les langages et leur utilité 10 2.1 HTML 10 2.2 CSS 13 2.3 JavaScript 16 2.4

Plus en détail

Module BD et sites WEB

Module BD et sites WEB Module BD et sites WEB Cours 8 Bases de données et Web Anne Doucet Anne.Doucet@lip6.fr 1 Le Web Architecture Architectures Web Client/serveur 3-tiers Serveurs d applications Web et BD Couplage HTML-BD

Plus en détail

TP 6.2.7a Gestion des fichiers du système d'exploitation du commutateur

TP 6.2.7a Gestion des fichiers du système d'exploitation du commutateur TP 6.2.7a Gestion des fichiers du système d'exploitation du commutateur Objectif Créer et vérifier une configuration de commutateur de base. Sauvegarder l IOS du commutateur sur un serveur TFTP puis le

Plus en détail

Serveur d'application Client HTML/JS. Apache Thrift Bootcamp

Serveur d'application Client HTML/JS. Apache Thrift Bootcamp Serveur d'application Client HTML/JS Apache Thrift Bootcamp Pré-requis La liste ci-dessous de logiciels doit être installée et opérationnelle sur la machine des participants : Compilateur thrift http://thrift.apache.org/

Plus en détail

Guillaume MONTAVON Benoît MEILHAC. Rapport Technique du projet. Gestionnaire de tâches pour Android

Guillaume MONTAVON Benoît MEILHAC. Rapport Technique du projet. Gestionnaire de tâches pour Android Guillaume MONTAVON Benoît MEILHAC Rapport Technique du projet Gestionnaire de tâches pour Android Sommaire 1. Introduction... 3 2. Outils utilisés... 3 2.1. Android SDK... 3 2.2. Android dans Eclipse...

Plus en détail

W3b-D4shB0ard documentation v0.1b.

W3b-D4shB0ard documentation v0.1b. W3b-D4shB0ard documentation v0.1b. Sommaire W3b-D4shB0ard documentation v0.1b...1 Informations relatives au projet...2 Description...2 License...2 Disclaimer...2 Requirements...2 Installation...3 Installation

Plus en détail

Méta-connaissances pour générer des programmes sur le Web

Méta-connaissances pour générer des programmes sur le Web Méta-connaissances pour générer des programmes sur le Web Basile STARYNKEVITCH http://starynkevitch.net/basile/ basile@starynkevitch.net (à titre privé, sans rapport avec mon employeur CEA-LIST) Séminaire

Plus en détail

NFA016 : Introduction. Pour naviguer sur le Web, il faut : Naviguer: dialoguer avec un serveur web

NFA016 : Introduction. Pour naviguer sur le Web, il faut : Naviguer: dialoguer avec un serveur web NFA016 : Introduction O. Pons, S. Rosmorduc Conservatoire National des Arts & Métiers Pour naviguer sur le Web, il faut : 1. Une connexion au réseau Réseau Connexion physique (câbles,sans fils, ) à des

Plus en détail

MongoDB. Objectif Découvrir l'aggrégation des requêtes, l'indexation, la réplication et l'autosharding sur MongoDB

MongoDB. Objectif Découvrir l'aggrégation des requêtes, l'indexation, la réplication et l'autosharding sur MongoDB ESIPE IR3 - IG3 Cloud Computing #3 MongoDB Objectif Découvrir l'aggrégation des requêtes, l'indexation, la réplication et l'autosharding sur MongoDB Révisions Téléchargez depuis le site le fichier ex.tgz.

Plus en détail

Vulnérabilités et sécurisation des applications Web

Vulnérabilités et sécurisation des applications Web OSSIR 09/09/2002 Vulnérabilités, attaques et sécurisation des applications Web Pourquoi les firewalls sont impuissants patrick.chambet@edelweb.fr http://www.edelweb.fr http://www.chambet.com Page 1 Planning

Plus en détail

Insérer des images dans Base

Insérer des images dans Base Insérer des images dans Base Version 1.0 du 30.05.2006 Réalisé avec : OOo 2.0.2 Plate-forme / Os : Toutes Distribué par le projet fr.openoffice.org Sommaire 1 Présentation...3 2 Quelques notions initiales...3

Plus en détail

Un peu d histoire. Qu est-ce que MongoDB?

Un peu d histoire. Qu est-ce que MongoDB? Un peu d histoire Initialement développé par 10gen en 2007 10gen rebaptisé en 2013 MongoDB, Inc. Son nom vient de "humongous" (c est énorme!!) Mis en open source en 2009 Dernière version stable (3.0.2)

Plus en détail

Mise à jour d'une Base Mailing

Mise à jour d'une Base Mailing Mise à jour d'une Base Mailing Import de Calc vers Base Notion de clé primaire Version 1.00 du 31.03.2006 Réalisé avec : OOo 2.0.1 Plate-forme / Os : Toutes Distribué par le projet fr.openoffice.org Table

Plus en détail

Architecture technique des PGI

Architecture technique des PGI Architecture technique des PGI Description du thème Propriétés Description Intitulé long Formation concernée Matière Présentation Notions Transversalité Pré-requis Outils Mots-clés Durée Auteur(es) Version

Plus en détail

opengeophone Documentation

opengeophone Documentation opengeophone Documentation Version 1.0.0 openmairie 28 June 2013 Table des matières 1 Manuel de l utilisateur 3 1.1 installation................................................ 3 1.2 Utilisation................................................

Plus en détail

Portage d application de Moodle 1.9 vers Moodle 2.x

Portage d application de Moodle 1.9 vers Moodle 2.x Portage d application de Moodle 1.9 vers Moodle 2.x Outils et recommandations à l usage des développeurs. Jean FRUITET Jean.fruitet@univ-nantes.fr Plan Plan Introduction 2 Les principaux i changements

Plus en détail

Développement de l interface Web du projet Hôpital

Développement de l interface Web du projet Hôpital Pôle informatique 2013/2014 École Nationale Supérieure des Mines de Saint-Étienne Développement de l interface Web du projet Hôpital Antoine Zimmermann antoine.zimmermann@emse.fr Le cahier des charges

Plus en détail

I N F O R M A T I O N S G É N É R A L ES D O M A I N E S D E C O M P É T E N C E S T E C H N O L O G I E S [DÉVELOPPEUR WEB] MAALEJ Nassim, 25 ans

I N F O R M A T I O N S G É N É R A L ES D O M A I N E S D E C O M P É T E N C E S T E C H N O L O G I E S [DÉVELOPPEUR WEB] MAALEJ Nassim, 25 ans , 25 ans Ingénieur étude et développement informatique Concepteur fonctionnel Assistant chef de projet I N F O R M A T I O N S G É N É R A L ES Titre Ingénieur étude et développement informatique Ecole

Plus en détail

L3 informatique TP n o 2 : Les applications réseau

L3 informatique TP n o 2 : Les applications réseau L3 informatique TP n o 2 : Les applications réseau Sovanna Tan Septembre 2009 1/20 Sovanna Tan L3 informatique TP n o 2 : Les applications réseau Plan 1 Transfert de fichiers 2 Le Courrier électronique

Plus en détail

LSI2 Programmation Web TP n 4 du 17 décembre 2007

LSI2 Programmation Web TP n 4 du 17 décembre 2007 Page 1 sur 6 LSI2 Programmation Web TP n 4 du 17 décembre 2007 Corrigé des TPs précédents Le code source de la solution est fourni dans un fichier.zip téléchargeable à l adresse http://www.isitix.com/enssat/enssat20071217.zip

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

CMS Panther. Guide de conception de Template. Herimihaona

CMS Panther. Guide de conception de Template. Herimihaona CMS Panther Guide de conception de Template Herimihaona But du document Il s agit d un guide rapide de conception du Template Panther. Back Office url : http://domaine.com/adminpanther Dans ce qui va suivre,

Plus en détail

Optimiser pour les appareils mobiles

Optimiser pour les appareils mobiles chapitre 6 Optimiser pour les appareils mobiles 6.1 Créer un site adapté aux terminaux mobiles avec jquery Mobile... 217 6.2 Transformer son site mobile en application native grâce à PhoneGap:Build...

Plus en détail

NFA 008. Introduction à NoSQL et MongoDB 25/05/2013

NFA 008. Introduction à NoSQL et MongoDB 25/05/2013 NFA 008 Introduction à NoSQL et MongoDB 25/05/2013 1 NoSQL, c'est à dire? Les bases de données NoSQL restent des bases de données mais on met l'accent sur L'aspect NON-relationnel L'architecture distribuée

Plus en détail