Modélisation PHP Orientée Objet pour les Projets Modèle MVC (Modèle Vue Contrôleur) Mini Framework
|
|
- Marie-Madeleine Laberge
- il y a 8 ans
- Total affichages :
Transcription
1 Modélisation PHP Orientée Objet pour les Projets Modèle MVC (Modèle Vue Contrôleur) Mini Framework L'objectif de ce document est de poser des bases de réflexion sur la modélisation d'un projet réalisé en langage PHP orienté objet. La finalité est de réaliser ce projet en créant un mini framework basé sur le modèle MVC (Modèle Vue Contrôleur). I - LE MODELE MVC (Modèle Vue Contrôleur) MVC (Modèle Vue Contrôleur) a pour objectif d'organiser la réalisation de l'application et à séparer complètement la présentation (Vue) des données (Modèle) et des traitements (Contrôleur). On définit le rôle des trois entités de la façon suivante : Modèle : c'est la logique métier de l'application ; Vue : définit l'interface utilisateur ; Contrôleur : prends en charge la gestion des évènements pour mettre à jour la vue ou le modèle. Le mini framework proposé dispose d'une couche supplémentaire (Dispatcher), permettant d'aiguiller les actions du contrôleur en fonction des choix de l'utilisateur. II - LE MODELE UML DE L'APPLICATION ETUDIEE On se propose d'étudier une application permettant de gérer un parc de machines. Les machines seront caractérisées par : un nom ; une adresse IP; une adresse MAC ; une localisation (salle). Modélisation PHP Orientée Objet pour les Projets Modèle MVC Mini Framework 1/17
2 II.1 Diagramme des cas d'utilisation II.2 Diagramme des classes II.3 Diagramme de séquences Cas d'utilisation «Initialiser» Modélisation PHP Orientée Objet pour les Projets Modèle MVC Mini Framework 2/17
3 Cas d'utilisation «Visualiser les machines» Cas d'utilisation «Rechercher des machines» Cas d'utilisation «Visualiser les machines sous forme graphique» Modélisation PHP Orientée Objet pour les Projets Modèle MVC Mini Framework 3/17
4 III - REALISATION DE L'APPLICATION III.1 Les fichiers L'arborescence du projet est la suivante : Conformément à la modélisation, nous allons créer 5 pages en relation avec un seul contrôleur et 4 actions : Dispatcher Page Contrôleur Action index.php views/parc/index.php controlers/parc.php parc::index listage.php views/parc/recherche.php controlers/parc.php parc::recherche recherche.php views/parc/recherche.php controlers/parc.php parc::recherche formip.php views/parc/formip.php controlers/parc.php parc::formip affichage views/parc/affiche.php controlers/parc.php parc::affiche Lorsque qu'on se connecte au site on appelle le dispatcher index.php qui sollicite l'action index du contrôleur controlers/parc.php. Ceci se traduit par l'affichage de la page views/parc/index.php. L'utilisateur a 3 choix : Listage : On appelle le dispatcher listage.php qui sollicite l'action recherche du contrôleur controlers/parc.php. Ceci se traduit par l'affichage de la page views/parc/recherche.php. Recherche : On appelle le dispatcher formip.php qui sollicite l'action formip du contrôleur controlers/parc.php. Ceci se traduit par l'affichage du formulaire views/parc/formip.php. Lors de la validation du formulaire, on appelle le dispatcher Modélisation PHP Orientée Objet pour les Projets Modèle MVC Mini Framework 4/17
5 recherche.php (en lui passant les paramètres saisis) qui sollicite l'action recherche du contrôleur controlers/parc.php. Ceci se traduit par l'affichage de la page views/parc/recherche.php. Affichage : On appelle le dispatcher affichage.php qui sollicite l'action affiche du contrôleur controlers/parc.php. Ceci se traduit d'abord par la création d'une image au format png à l'aide de la librairie jpgraph puis par l'affichage de la page views/parc/affiche.php qui se charge d'afficher cette image. Remarques : Les différentes pages sont constituées du squelette contenu dans la page views/layout/default.php. III.2 Sources Dispatchers // commun.php // code commun a tous les dispatchers //WIN32 //define('root', 'C://wamp/www/parc/'); // LINUX define('root', '/var/www/www/parc/'); define('webroot', ''); // On inclut les fichiers de Core require(root.'core/model.php'); require(root.'core/controller.php'); //echo 'Connexion a la BDD'; mysql_connect('localhost','root','****'); mysql_select_db('parc'); // On inclut le controleur require('./controllers/parc.php'); // On initialise le controleur $controller = new parc(); // index.php // Dispatcher principal //On inclut le fichier commun Modélisation PHP Orientée Objet pour les Projets Modèle MVC Mini Framework 5/17
6 require('commun.php'); // On appelle l'action du controleur $controller->index(); //listage.php // Dispatcher secondaire // On inclut le fichier commun require('commun.php'); // On appelle l'action du controleur $controller->recherche(""); //recherche.php // Dispatcher secondaire // On inclut le fichier commun require('commun.php'); // On recupere les donnees du formulaire extract ($_POST); // On appelle l'action du controleur $controller->recherche($addip); //formip.php // Dispatcher secondaire // On inclut le fichier commun require('commun.php'); // On appelle l'action du controleur $controller->formip(); //affichage.php // Dispatcher secondaire Modélisation PHP Orientée Objet pour les Projets Modèle MVC Mini Framework 6/17
7 // On inclut le fichier commun require('commun.php'); // On appelle l'action du controleur $controller->affiche(); Pages (vues) //views/layout/default.php <HTML> <HEAD> <TITLE> Parc </TITLE> </HEAD> <BODY> <h1>bts IRIS - Gestion du parc de machines</h1> echo $content_for_layout; <p> <a href=" echo WEBROOT; index.php"> echo 'acceuil'; </a> </p> <BODY> </HTML> //views/parc/index.php <h2> <a href=" echo WEBROOT; listage.php"> echo 'Listage'; </a> </h2> <h2> <a href=" echo WEBROOT; formip.php"> echo 'Recherche'; </a> </h2> <h2> <a href=" echo WEBROOT; affichage.php"> echo 'Affichage'; </a> </h2> //views/parc/recherche.php <h2> <a> echo "Affichage des Machines</br>"; </a> </h2> Modélisation PHP Orientée Objet pour les Projets Modèle MVC Mini Framework 7/17
8 echo "<table border=1 width=\"100%\">"; $liste_indices=array_keys((array)$record[0]); echo "<tr>"; while($indice=each($liste_indices)) { echo "<td align=center>"; echo $indice['value']; echo "</td>"; echo "</tr>"; foreach((array)$record as $cle_tableau=>$ligne) { echo "<tr>"; foreach($ligne as $cle=>$valeur) { echo "<td align=center>"; echo $valeur; echo "</td>"; echo "</tr>"; echo "</table>"; //views/parc/formip.php <body> <h2> Selection d'une machine dans le domaine</h2> <form name="formip" method="post" action=" echo WEBROOT; recherche.php"> <p>adresse IP :</p> <p><input name="addip" size="15" maxlength="15" type="text"></p> <p><input value="rechercher" type="submit"></p> </form> </body> //views/parc/affiche.php <img src="/images/monimage.png"/> Modélisation PHP Orientée Objet pour les Projets Modèle MVC Mini Framework 8/17
9 3.2.3 Le contrôleur //controllers/parc.php class parc extends Controller{ var $models = array('bddparc'); //Action index function index(){ $this->render('index'); function recherche($ip){ $d['record'] = $this->bddparc->query("select id, ip, mac, nom, salle FROM machines WHERE ip LIKE '$ip%' ORDER BY ip ASC"); //print_r($d); $this->set($d); $this->render('recherche'); function affiche(){ require_once ('./jpgraph/jpgraph.php'); require_once ('./jpgraph/jpgraph_line.php'); require_once ('./jpgraph/jpgraph_bar.php'); $nb = 15; // On affiche l'id des 15 derniers enregistrements $var=id; $d['record'] = $this->bddparc->getlast($nb); $this->set($d); for ($i=0; $i<$nb; $i++) { $donnees[$i] = $d['record'][$i][$var]; //print_r($donnees); $largeur = 500; $hauteur = 400; // Initialisation du graphique $graphe = new Graph($largeur, $hauteur); // Echelle lineaire ('lin') en ordonnee et pas de valeur en abscisse ('text') // Valeurs min et max seront determinees automatiquement Modélisation PHP Orientée Objet pour les Projets Modèle MVC Mini Framework 9/17
10 $graphe->setscale("textlin"); // Creation de l'histogramme $histo = new BarPlot($donnees); //$histo = new BarPlot($d['record']['id']); // Ajout de l'histogramme au graphique $graphe->add($histo); // Ajout du titre du graphique $graphe->title->set("histogramme"); // Affichage du graphique $graphe->stroke("/var/www/images/monimage.png"); // on enregistre l'image //imagepng($graphe, "/var/www/images/monimage.png"); $this->render('affiche'); function formip(){ $this->render('formip'); Le modèle //models/bddparc.php class BddParc extends Model{ var $table = 'machines'; //nom de la table function getlast($num){ return $this->find(array( 'limit' => $num, 'order' => 'id DESC' )); Modélisation PHP Orientée Objet pour les Projets Modèle MVC Mini Framework 10/17
11 3.2.5 Le contrôleur et le modèle générique commun à chaque projet //core/controller.php class Controller{ var $vars = array(); var $layout = 'default'; function construct(){ if(isset($_post)){ $this->data = $_POST; if(isset($this->models)){ foreach($this->models as $v){ $this->loadmodel($v); function set($d){ $this->vars = array_merge($this->vars,$d); // inclusion du fichier passé en paramètre function render($filename){ extract($this->vars); ob_start(); require(root.'views/'.get_class($this).'/'.$filename.'.php'); $content_for_layout = ob_get_clean(); if($this->layout==false){ echo $content_for_layout; else{ require(root.'views/layout/'.$this->layout.'.php'); function loadmodel($name){ require_once(root.'models/'.strtolower($name).'.php'); $this->$name = new $name(); Modélisation PHP Orientée Objet pour les Projets Modèle MVC Mini Framework 11/17
12 //core/model.php /** * Objet Model * Permet les interactions avec la base de donnees * */ class Model{ public $table; public $id; /** * Lit une ligne dans la base de donnees par rapport a l'id de l'objet $fields Liste des champs a recuperer * */ public function read($fields=null){ if($fields==null){ $fields = "*"; $sql = "SELECT $fields FROM ".$this->table." WHERE id=".$this->id ; $req = mysql_query($sql) or die(mysql_error()."<br/> => ".mysql_query()); $data = mysql_fetch_assoc($req); foreach($data as $k=>$v){ /** $this->$k = $v; * Permet de recuperer plusieurs lignes dans la BDD $data conditions de recuperations * */ public function find($data=array()){ $conditions = "1=1"; $fields = "*"; $limit = ""; $order = "id DESC"; extract($data); if(isset($data["limit"])){ $limit = "LIMIT ".$data["limit"]; $sql = "SELECT $fields FROM ".$this->table." WHERE $conditions ORDER BY $order $limit"; $req = mysql_query($sql) or die(mysql_error()."<br/> => ".$sql); $d = array(); Modélisation PHP Orientée Objet pour les Projets Modèle MVC Mini Framework 12/17
13 while($data = mysql_fetch_assoc($req)){ $d[] = $data; return $d; /** * Permet de faire une requete complexe $sql Requete a effectuer * */ public function query($sql){ $req = mysql_query($sql) or die(mysql_error()."<br/> => ".$sql); $d = array(); while($data = mysql_fetch_assoc($req)){ $d[] = $data; return $d; /** * Permet de charger un model $name Nom du modele a charger * */ static function load($name){ require("$name.php"); return new $name(); Modélisation PHP Orientée Objet pour les Projets Modèle MVC Mini Framework 13/17
14 III.3 Mise en place de la BDD Il faut créer une base nommée parc contenant une table nommée machines. A l'aide de phpmyadmin on exécute la requête SQL suivante : Creation de la table `machines` dans la base `parc` -- CREATE DATABASE IF NOT EXISTS `parc`; CREATE TABLE IF NOT EXISTS `parc`.`machines` ( `id` int(11) NOT NULL auto_increment, `ip` char(15) NOT NULL, `mac` char(17) NOT NULL, `nom` char(15) NOT NULL, `salle` int(11) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=82 ; Contenu de la table `machines` -- INSERT INTO `parc`.`machines` (`id`, `ip`, `mac`, `nom`, `salle`) VALUES (47, ' ', '00:1a:73:7d:e0:eb', 'tsirist-w-jcc', 2), (46, ' ', '00:00:6c:c7:6b:51', 'tsirist-p-jcc', 2), (45, ' ', '00:14:6c:65:86:ab', 'tsirist-w-remy', 2), (44, ' ', '00:a0:d1:b0:47:38', 'tsirist-p-remy', 2), (16, ' ', '00:0d:56:c2:f2:5a', 'tsirist-01', 2), Modélisation PHP Orientée Objet pour les Projets Modèle MVC Mini Framework 14/17
15 (17, ' ', '00:0d:56:c2:f3:a7', 'tsirist-02', 1), (18, ' ', '00:0d:56:c2:e8:4d', 'tsirist-03', 1), (19, ' ', '00:0d:56:c2:f1:b3', 'tsirist-04', 1), (20, ' ', '00:0d:56:c2:f4:26', 'tsirist-05', 1), (21, ' ', '00:0d:56:c2:f2:fa', 'tsirist-06', 1), (22, ' ', '00:0d:56:c2:f3:ad', 'tsirist-07', 1), (23, ' ', '00:11:85:10:f4:bf', 'tsirist-08', 2), (24, ' ', '00:11:85:11:01:2b', 'tsirist-09', 1), (25, ' ', '00:11:85:14:4e:37', 'tsirist-10', 1), (26, ' ', '00:11:85:14:4d:99', 'tsirist-11', 1), (27, ' ', '00:11:85:62:71:05', 'tsirist-12', 1), (28, ' ', '00:11:85:14:4e:22', 'tsirist-13', 1), (29, ' ', '00:11:85:14:4d:ab', 'tsirist-14', 1), (30, ' ', '00:0f:b5:85:0c:21', 'tsirist-15', 0), (31, ' ', '00:14:85:7d:d2:35', 'tsirist-16', 0), (32, ' ', '00:14:85:7a:a9:8c', 'tsirist-17', 0), (79, ' ', '00:14:85:7D:CF:AA', 'tsirist-18', 0), (34, ' ', '00:14:85:79:78:fa', 'tsirist-19', 0), (77, ' ', '00:14:85:7a:78:a3', 'tsirist-20', 0), (80, ' ', '00:14:85:79:78:F8', 'tsirist-21', 0), (38, ' ', '00:14:85:7a:78:81', 'tsirist-22', 0), (39, ' ', '00:14:85:7a:78:dc', 'tsirist-23', 0), (40, ' ', '00:14:85:7a:78:a5', 'tsirist-24', 0), (41, ' ', '00:14:85:7a:78:de', 'tsirist-25', 0), III.4 Résultats La page principale Modélisation PHP Orientée Objet pour les Projets Modèle MVC Mini Framework 15/17
16 3.4.2 Listage Recherche Modélisation PHP Orientée Objet pour les Projets Modèle MVC Mini Framework 16/17
17 3.4.4 Affichage Remarques : Pour utiliser la librairie graphique gd (donc jpgraph) sous Linux, il est nécessaire de recompiler php ou d'utiliser les dépôts Dotdeb pour avoir la dernière version de php. Le dossier dans lequel est stocké l'image, doit être accessible en lecture et écriture à l'utilisateur www-data. Modélisation PHP Orientée Objet pour les Projets Modèle MVC Mini Framework 17/17
PHP et les Bases de données - Généralités
PHP et les Bases de données - Généralités Conception d une base de données Méthodes utilisées : MERISE, UML Modèle conceptuel des données MCD, Modèle logique MLD, Modèle Physique MPD. Ces aspects seront
Plus en détailPHP 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étailStockage du fichier dans une table mysql:
Stockage de fichiers dans des tables MYSQL avec PHP Rédacteur: Alain Messin CNRS UMS 2202 Admin06 30/06/2006 Le but de ce document est de donner les principes de manipulation de fichiers dans une table
Plus en détailPHP 5. La base de données MySql. A. Belaïd 1
PHP 5 La base de données MySql A. Belaïd 1 Base de données C est quoi une base de données? Une base de données contient une ou plusieurs tables, chaque table ayant un ou plusieurs enregistrements Exemple
Plus en détailModule 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étailCREATION 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étailPratique et administration des systèmes
Université Louis Pasteur Licence Informatique (L2) UFR de Mathématiques et Informatique Année 2007/2008 1 But du TP Pratique et administration des systèmes TP10 : Technologie LAMP Le but de ce TP est de
Plus en détailPartie 0 : Gestion des tablespace et des utilisateurs... 3
Sommaire Partie 0 : Gestion des tablespace et des utilisateurs... 3 1- Créer deux TableSpaces votre_nom-tbs et Votre_nom-TempTBS :... 3 2. Créer un utilisateur qui porte votre nom :... 3 3. Attribuer à
Plus en détailSQL Historique 1982 1986 1992
SQL Historique 1950-1960: gestion par simple fichier texte 1960: COBOL (début de notion de base de données) 1968: premier produit de sgbdr structuré (IBM -> IDMS) 1970-74: élaboration de l'outil d'analyse
Plus en détailSYSTÈMES D INFORMATIONS
SYSTÈMES D INFORMATIONS Développement Modx Les systèmes de gestion de contenu Les Content Management Système (CMS) servent à simplifier le développement de sites web ainsi que la mise à jour des contenus.
Plus en détailMysql avec EasyPhp. 1 er mars 2006
Mysql avec EasyPhp 1 er mars 2006 Introduction MYSQL dérive directement de SQL (Structured Query Language) qui est un langage de requètes vers les bases de données relationnelles. Il en reprend la syntaxe
Plus en détail1. 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étailCOMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2
SQL Sommaire : COMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2 COMMANDES DE MANIPULATION DE DONNEES... 2 COMMANDES DE CONTROLE TRANSACTIONNEL... 2 COMMANDES DE REQUETE DE DONNEES... 2 COMMANDES
Plus en détailEcriture d'un Plugin pour GLPI
Ecriture d'un Plugin pour GLPI A partir d'un besoin concret, nous allons explorer la structure des Plugins de GLPI et montrer comment étendre les fonctionnalités de ce logiciel de gestion de parc. Mots-clés:
Plus en détailTD : Requêtes SQL (BDR.TD2-1) INSA 3IF 2008-2009
TD : Requêtes SQL (BDR.TD2-1) INSA 3IF 2008-2009 Loïc Maisonnasse 1 Objectif Ce TD a pour objectif de vous familiariser avec le langage de requêtes SQL. Et de vous apprendre à écrire des requêtes SQL pour
Plus en détailGestion de base de données
Université Libre de Bruxelles Faculté de Philosophie et Lettres Département des Sciences de l Information et de la Communication Gestion de base de données Projet : Take Off ASBL Cours de M. A. Clève STIC-B-505
Plus en détailPlan Général Prévisionnel (1/2) (non contractuel) Internet et Outils L1/IO2 2006-2007 S2-IO2 Bases de données: Jointures, Transactions
Général Prévisionnel (1/2) (non contractuel) Internet et Outils L1/IO2 2006-2007 S2-IO2 Bases de données: Jointures, Cours Internet et Outils: [1/12] Intro, Internet, Web, XHTML (2H) [2/12] XHTML(2H) [3/12]
Plus en détailSéance d ED n 5 : HTML et JavaScript
Séance d ED n 5 : HTML et JavaScript EXERCICE 1 1) le but de cet exercice est de construire l'interface suivante en html: une réponse : 1)
Plus en détailCréation d'un site dynamique en PHP avec Dreamweaver et MySQL
Création d'un site dynamique en PHP avec Dreamweaver et MySQL 1. Création et configuration du site 1.1. Configuration de Dreamweaver Avant de commencer, il est nécessaire de connaître l'emplacement du
Plus en détailOlivier Mondet http://unidentified-one.net
T-GSI Ch.4 Le Langage SQL LDD, LCD Cet exercice guidé reprend le plan suivis lors de l intervention de formation faite pour l académie de Versailles. L objectif principal visait en la présentation du langage
Plus en détailLa programmation orientée objet Gestion de Connexions HTTP Manipulation de fichiers Transmission des données PHP/MySQL. Le langage PHP (2)
Le langage PHP (2) Walid Belkhir Université de Provence belkhir@cmi.univ-mrs.fr http://www.lif.univ-mrs.fr/ belkhir/ 1 / 54 1 La programmation orientée objet 2 Gestion de Connexions HTTP 3 Manipulation
Plus en détailBases de données relationnelles
Bases de données relationnelles Système de Gestion de Bases de Données Une base de données est un ensemble de données mémorisé par un ordinateur, organisé selon un modèle et accessible à de nombreuses
Plus en détailFormulaire pour envoyer un mail
Formulaire pour envoyer un mail AVERTISSEMENT : Ce tuto est une compilation de plusieurs sources trouvées sur internet, dont les références sont données à la fin de cet article. Le but de ce tutoriel n'est
Plus en détailCours Bases de données 2ème année IUT
Cours Bases de données 2ème année IUT Cours Bilan : Des vues à PL/SQL corrigé Anne Vilnat http://www.limsi.fr/individu/anne/cours Plan 1 Cas exemple 2 Les tables... 3 Vues et index 4 Privilèges 5 Fonctions
Plus en détailPrésentation Windows Azure Hadoop Big Data - BI
Présentation Windows Azure Hadoop Big Data - BI Sommaire 1. Architecture Hadoop dans Windows Azure... 3 2. Requête Hive avec Hadoop dans Windows Azure... 4 3. Cas d études... 5 3.1 Vue : Administrateur...
Plus en détailI. MySQL : Serveur et SGBD
Le Système de Gestion de Base de Données MySQL I. MySQL : Serveur et SGBD Menu I. MySQL : Serveur et SGBG II. Création d'une base de données avec MySQL MySQL est un système de gestion et conception de
Plus en détailPHP 4 PARTIE : BASE DE DONNEES
PHP 4 PARTIE : BASE DE DONNEES 1. Introduction 2. Présentation de MySQL 3. Principe 4. Connexion 5. Interrogation 6. Extraction des données 7. Fonctions de services 8. Traitement des erreurs 9. Travaux
Plus en détailProjet 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étailNFA 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étailDOM - Document Object Model
DOM - Document Object Model 1 But de DOM Interfacer les langages de programmation avec les documents XML en les associant avec un modèle orienté objet DOM permet aux programmes et scripts : d'accéder et
Plus en détailISC21-1 --- Système d Information Architecture et Administration d un SGBD Compléments SQL
ISC21-1 --- Système d Information Architecture et Administration d un SGBD Compléments SQL Jean-Marie Pécatte jean-marie.pecatte@iut-tlse3.fr 16 novembre 2006 ISIS - Jean-Marie PECATTE 1 Valeur de clé
Plus en détailLe Langage SQL version Oracle
Université de Manouba École Supérieure d Économie Numérique Département des Technologies des Systèmes d Information Le Langage SQL version Oracle Document version 1.1 Mohamed Anis BACH TOBJI anis.bach@isg.rnu.tn
Plus en détailHistorisation des données
Historisation des données Partie 1 : mode colonne par Frédéric Brouard, alias SQLpro MVP SQL Server Expert langage SQL, SGBDR, modélisation de données Auteur de : SQLpro http://sqlpro.developpez.com/ "SQL",
Plus en détailPDO : PHP Data Object 1/13
PDO : PHP Data Object 1/13 Tous ne sont que des extensions... Les fonstions mysql_* : API mysql Les fonctions mysqli_* aussi Il en est de même pour PDO PDO (avec le pilote PDO MySQL Driver et Extension
Plus en détailINTRODUCTION A JAVA. Fichier en langage machine Exécutable
INTRODUCTION A JAVA JAVA est un langage orienté-objet pur. Il ressemble beaucoup à C++ au niveau de la syntaxe. En revanche, ces deux langages sont très différents dans leur structure (organisation du
Plus en détailwww.evogue.fr SUPPORT DE COURS / PHP PARTIE 3
L i a m T A R D I E U www.evogue.fr SUPPORT DE COURS / PHP PARTIE 3 Sommaire Sommaire... 2 Eléments initiaux... 3 Base de données... 3 Tables... 4 membres... 4 commandes... 4 articles... 4 details_commandes...
Plus en détailCompétences Business Objects - 2014
Compétences Business Objects - 2014 «Mars-Juin 2014. Réf : Version 1 Page 1 sur 34 Sommaire CONTEXTE DE LA REMISE A NIVEAU EN AUTOFORMATION... 3 1. MODELISATION... 4 1.1 DESCRIPTION FONCTIONNEL DE L'APPLICATION
Plus en détailTutoriel: Création d'un Web service en C++ avec WebContentC++Framework
Tutoriel: Création d'un Web service en C++ avec WebContentC++Framework Gaël de Chalendar CEA LIST / LIC2M Journée de Présentation des Technologies WebContent INSTN 14/12/2009 Présentation de gsoap Plan
Plus en détailRapport de projet Site web pour une association
51, rue Barthélémy de Laffemas BP 29 26901 Valence Cedex 9 Rapport de projet Site web pour une association Année 2006-2007 Bruno SABOT 1ère année DUT R&T Mathieu ROGER 2ème année DUT R&T Rapport réalisé
Plus en détailApplication web de gestion de comptes en banques
Application web de gestion de comptes en banques Objectif Réaliser une application Web permettant à un client de gérer ses comptes en banque Diagramme de cas d'utilisation 1 Les cas d'utilisation Connexion
Plus en détailDEVAKI NEXTOBJET PRESENTATION. Devaki Nextobjects est un projet sous license GNU/Public.
DEVAKI NEXTOBJET 1 Présentation...2 Installation...3 Prérequis...3 Windows...3 Linux...3 Exécution...4 Concevoir une BDD avec Devaki NextObject...5 Nouveau MCD...5 Configurer la connexion à la base de
Plus en détailInstallation d'un serveur FTP géré par une base de données MySQL
BTS INFORMATIQUE DE GESTION Option Administrateur de réseaux développement d applications COMPTE-RENDU D ACTIVITE ACTIVITE N 2 Nom et Prénom : Casanova Grégory Identification (objectif) de l activité Installation
Plus en détailTous les autres noms de produits ou appellations sont des marques déposées ou des noms commerciaux appartenant à leurs propriétaires respectifs.
Connexion à 4D Server depuis une page ASP Par Noreddine MARGOUM, Technicien Contrôle Qualité, 4D S.A. Note technique 4D-200403-08-FR Version 1 Date 1 Mars 2004 Résumé Le propos de cette note technique
Plus en détailServeur Linux : FTP. Mise en place d un service FTP sous Linux. Bouron Dimitri 20/04/2014
Mise en place d un service FTP sous Linux Bouron Dimitri 20/04/2014 Ce document sert de démonstration concise pour l installation, la configuration, la sécurisation, d un serveur FTP sous Linux utilisant
Plus en détailLes BASES de DONNEES dans WampServer
Les BASES de DONNEES dans WampServer 1 Définitions Générales Une base de données (BDD) permet d'enregistrer, de stocker, de ranger des données de façon organisée et hiérarchisée. SQL est le langage qui
Plus en détail1 Position du problème
Licence Science et Technologies - INF245 Examen session 1 - mai 2012 Durée : 2 heures Documents non autorisés Le barème est donné à titre indicatif 1 Position du problème Le Club Universitaire de Vélo
Plus en détailCahier Technique. «Développer une application intranet pour la gestion des stages des étudiants» Antonin AILLET. Remi DEVES
Antonin AILLET Remi DEVES Thibaut AZZOPARDI 2 ème année de DUT Informatique Cahier Technique «Développer une application intranet pour la gestion des stages des étudiants» Encadré par Didier BOULLE Année
Plus en détailLe langage SQL pour Oracle - partie 1 : SQL comme LDD
Le langage SQL pour Oracle - partie 1 : SQL comme LDD 1 SQL : Introduction SQL : Structured Query Langage langage de gestion de bases de donn ees relationnelles pour Définir les données (LDD) interroger
Plus en détail1. Qu'est-ce que SQL?... 2. 2. La maintenance des bases de données... 2. 3. Les manipulations des bases de données... 5
1. Qu'est-ce que SQL?... 2 2. La maintenance des bases de données... 2 2.1 La commande CREATE TABLE... 3 2.2 La commande ALTER TABLE... 4 2.3 La commande CREATE INDEX... 4 3. Les manipulations des bases
Plus en détailLangage SQL : créer et interroger une base
Langage SQL : créer et interroger une base Dans ce chapitre, nous revenons sur les principales requêtes de création de table et d accès aux données. Nous verrons aussi quelques fonctions d agrégation (MAX,
Plus en détailQuelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object)
Quelques patterns pour la persistance des objets avec DAO Ce cours présente des modèles de conception utilisés pour effectuer la persistance des objets Université de Nice Sophia-Antipolis Version 1.4 30/8/07
Plus en détailPHP. Bertrand Estellon. 26 avril 2012. Aix-Marseille Université. Bertrand Estellon (AMU) PHP 26 avril 2012 1 / 214
PHP Bertrand Estellon Aix-Marseille Université 26 avril 2012 Bertrand Estellon (AMU) PHP 26 avril 2012 1 / 214 SQLite et PDO Base de données SQLite et PDO SQLite écrit les données relatives à la base dans
Plus en détailPrésentation du Framework BootstrapTwitter
COUARD Kévin HELVIG-LARBRET Blandine Présentation du Framework BootstrapTwitter IUT Nice-Sophia LP-SIL IDSE Octobre 2012 Sommaire I. INTRODUCTION... 3 Définition d'un framework... 3 A propos de BootstrapTwitter...
Plus en détailCREATION d UN SITE WEB (INTRODUCTION)
CREATION d UN SITE WEB (INTRODUCTION) Environnement : World Wide Web : ordinateurs interconnectés pour l échange d informations ( de données) Langages : HTML (HyperText Markup Language) : langages pour
Plus en détailMysql. Les requêtes préparées Prepared statements
Mysql Les requêtes préparées Prepared statements Introduction Les prepared statements côté serveur sont une des nouvelles fonctionnalités les plus intéressantes de MySQL 4.1 (récemment sorti en production
Plus en détailUNIVERSITE DE CONSTANTINE 1 FACULTE DES SIENCES DE LA TECHNOLOGIE DEPARTEMENT D ELECTRONIQUE 3 ème année LMD ELECTRONIQUE MEDICALE
UNIVERSITE DE CONSTANTINE 1 FACULTE DES SIENCES DE LA TECHNOLOGIE DEPARTEMENT D ELECTRONIQUE 3 ème année LMD ELECTRONIQUE MEDICALE TP N 1 : Initiation à L Access I. Introduction Microsoft Access fait partie
Plus en détailInitiation à html et à la création d'un site web
Initiation à html et à la création d'un site web Introduction : Concevoir un site web consiste à définir : - l'emplacement où ce site sera hébergé - à qui ce site s'adresse - le design des pages qui le
Plus en détail1 Introduction et installation
TP d introduction aux bases de données 1 TP d introduction aux bases de données Le but de ce TP est d apprendre à manipuler des bases de données. Dans le cadre du programme d informatique pour tous, on
Plus en détailéquipement radio Procédure
07/03/2014 GLPI / Inventaire équipement radio Procédure Anthony MANDRON SDIS 21 Table des matières Procédure d installation de GLPI sur une Debian Wheezy :... 2 Mise en place du plugin «Generic Object
Plus en détailComment Connecter une Base de Données MySQL via un Driver JDBC Avec OpenOffice.org
Comment Connecter une Base de Données MySQL via un Driver JDBC Avec OpenOffice.org Diffusé par Le Projet Documentation OpenOffice.org OpenOffice.org Documentation Project How-To Table des matières 1. Introduction...3
Plus en détailTP 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étailSoon_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étailECR_DESCRIPTION CHAR(80), ECR_MONTANT NUMBER(10,2) NOT NULL, ECR_SENS CHAR(1) NOT NULL) ;
RÈGLES A SUIVRE POUR OPTIMISER LES REQUÊTES SQL Le but de ce rapport est d énumérer quelques règles pratiques à appliquer dans l élaboration des requêtes. Il permettra de comprendre pourquoi certaines
Plus en détailAuteur 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étailLangage propre à Oracle basé sur ADA. Offre une extension procédurale à SQL
Cours PL/SQL Langage propre à Oracle basé sur ADA Offre une extension procédurale à SQL PL/SQL permet d utiliser un sous-ensemble du langage SQL des variables, des boucles, des alternatives, des gestions
Plus en détailLe stockage local de données en HTML5
Le stockage local HTML5, pourquoi faire? Dans une optique de réduction des couts de maintenance, de déploiement, beaucoup d'entreprises ont fait le choix de migrer leurs applicatifs (comptables, commerciales,
Plus en détailCorrigés détaillés des exercices
Corrigés détaillés des exercices Diagramme des tables objet La figure suivante vous aidera dans la compréhension des manipulations des objets de la base. Client_type Client num nom adresse {telephone_vry}
Plus en détailIntroduction à JDBC. Accès aux bases de données en Java
Introduction à JDBC Accès aux bases de données en Java Eric Cariou Université de Pau et des Pays de l'adour Département Informatique Eric.Cariou@univ-pau.fr 1 Introduction JDBC : Java Data Base Connectivity
Plus en détailEcole Polytechnique de Louvain INGI 1271 - Fichiers et bases de données
Ecole Polytechnique de Louvain INGI 1271 - Fichiers et bases de données Rapport de projet " Gestion d'un aéroport " Groupe 13 DE GROOTE Charles LAMOULINE Laurent NUTTIN Vincent Q6-2009 TABLE DES MATIÈRES
Plus en détailModule 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étailPrincipales 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étailAttaques de type. Brandon Petty
Attaques de type injection HTML Brandon Petty Article publié dans le numéro 1/2004 du magazine Hakin9 Tous droits reservés. La copie et la diffusion de l'article sont admises à condition de garder sa forme
Plus en détailLicence de MIDO - 3ème année Spécialités Informatique et Mathématiques Appliquées
Licence de MIDO - 3ème année Spécialités Informatique et Mathématiques Appliquées ANNEE 2014 / 2015 Désignation de l enseignement : Bases de données Nom du document : TP SQL sous PostgreSQL Rédacteur :
Plus en détailNFA016 : 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étailA QUOI SERVENT LES BASES DE DONNÉES?
BASE DE DONNÉES OBJET Virginie Sans virginie.sans@irisa.fr A QUOI SERVENT LES BASES DE DONNÉES? Stockage des informations : sur un support informatique pendant une longue période de taille importante accès
Plus en détailOpenPaaS Le réseau social d'entreprise
OpenPaaS Le réseau social d'entreprise Spécification des API datastore SP L2.3.1 Diffusion : Institut MinesTélécom, Télécom SudParis 1 / 12 1OpenPaaS DataBase API : ODBAPI...3 1.1Comparaison des concepts...3
Plus en détailTutoriel : Feuille de style externe
Tutoriel : Feuille de style externe Vous travaillerez à partir du fichier cerise.htm que vous ouvrirez dans NVU. Commencez par remplacer le contenu de la balise Title par : Comment débuter une recherche?
Plus en détailNuxeo 5.4 : les nouveautés
Atelier GED - 30 mars 2011, Paris Consortium ESUP-Portail Nuxeo.conf et templates Depuis la version 5.3.2, nouvelle façon de configurer Nuxeo à l'aide du fichier nuxeo.conf et des templates. Les templates
Plus en détailDOSSIER D'ACTIVITES SUR LE PHP N 03 Créer une base de données MySQL avec PHPMyAdmin
DOSSIER D'ACTIVITES SUR LE PHP N 03 Créer une base de données MySQL avec PHPMyAdmin Objectifs : Apprendre à l apprenant à lancer un serveur local «Apache» Apprendre à l'apprenant à lancer un serveur MySQL
Plus en détailFlex. Lire les données de manière contrôlée. Programmation Flex 4 Aurélien VANNIEUWENHUYZE
Flex Lire les données de manière contrôlée 1 Plan Lier les données Stocker les données Valider les données 2 Gérer des données Lier des données La notion de DataBinding est l une des plus importantes du
Plus en détailMRTG & RRD Tool. Multi Router Traffic Grapher
MRTG & RRD Tool Multi Router Traffic Grapher Plan Principe Historique Principes Généraux Utilisation Installation et configuration Installation Configuration Architecture RRD Tool Étude de cas Historique
Plus en détailSommaire. 1 Introduction 19. 2 Présentation du logiciel de commerce électronique 23
1 Introduction 19 1.1 À qui s adresse cet ouvrage?... 21 1.2 Comment est organisé cet ouvrage?... 22 1.3 À propos de l auteur... 22 1.4 Le site Web... 22 2 Présentation du logiciel de commerce électronique
Plus en détailSécurité des sites Web Pas un cours un recueil du net. INF340 Jean-François Berdjugin
Sécurité des sites Web Pas un cours un recueil du net INF340 Jean-François Berdjugin Vulnérabilité Définition (wikipédia) : Dans le domaine de la sécurité informatique, une vulnérabilité est une faiblesse
Plus en détailAttaques applicatives
Attaques applicatives Attaques applicatives Exploitation d une mauvaise programmation des applications Ne touche pas le serveur lui-même mais son utilisation/ configuration Surtout populaire pour les sites
Plus en détailConception d'un système d'information WEB avec UML Par Ass SERGE KIKOBYA
Conception d'un système d'information WEB avec UML Par Ass SERGE KIKOBYA I. Introduction Suite à une demande des étudiants, il m'est apparu intéressant de montrer, à travers un exemple concret, comment
Plus en détail25 mars. Tutoriel sur Laravel. Préparé par : Lydiane Beaulne-Bélisle. Ceci est un tutorial qui montre comment débuter avec le Framework PHP Laravel.
25 mars Tutoriel sur Laravel Préparé par : Lydiane Beaulne-Bélisle Ceci est un tutorial qui montre comment débuter avec le Framework PHP Laravel. Créé pour le cours de Projet de fin d étude Collège de
Plus en détailTechnologie Web. Conception de sites Web. Alexandre Pauchet. INSA Rouen - Département ASI. INSA - ASI TechnoWeb : Rappels UML 1/21
INSA - ASI TechnoWeb : Rappels UML 1/21 Technologie Web Conception de sites Web Alexandre Pauchet INSA Rouen - Département ASI BO.B.RC.18, pauchet@insa-rouen.fr INSA - ASI TechnoWeb : Rappels UML 2/21
Plus en détailRapport de stage - SponsorBoost
2012 Rapport de stage - SponsorBoost Création d une interface d affiliation publicitaire respectant le patron d architecture MVC Sous la direction de : M. Louis HOUETTE tuteur entreprise M. Sergio SARMIENTO
Plus en détailPROJET 1 : BASE DE DONNÉES REPARTIES
PROJET 1 : BASE DE DONNÉES REPARTIES GESTION D UNE BANQUE Elèves : David Bréchet Frédéric Jacot Charles Secrétan DONNÉES DU PROJET SSC - Bases de Données II Laboratoire de Bases de Données BD réparties
Plus en détailDans l'article précédent, vous avez appris
Pour les débutants Les différents formats de sortie proposés par PHPExcel La bibliothèque orientée objet PHPExcel permet de lire et créer des fichiers pour tableurs. Dans cette série d articles, vous apprendrez
Plus en détailEtude 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étailCréation et Gestion des tables
Création et Gestion des tables Version 1.0 Z Grégory CASANOVA 2 Sommaire 1 Introduction... 3 2 Pré-requis... 4 3 Les tables... 5 3.1 Les types de données... 5 3.1.1 Les types de données Sql Server... 5
Plus en détailBASES DE DONNEES TP POSTGRESQL
2003-2004 Université Paris Dauphine IUP Génie Mathématique et Informatique IUP 2 ème année et Formation Continue BASES DE DONNEES TP POSTGRESQL Maude Manouvrier La reproduction de ce document par tout
Plus en détailIntroduction. Passage de sites statiques à des sites dynamiques
PHP (ET MYSQL) Introduction HTML : pages destinées à être publiées sur Internet Texte à afficher + instructions de mise en page Pas d instructions de calcul ou de traitements conditionnels Des sites de
Plus en détailRapport de stage Nicolas PLAZE Licence Pro A2I. Rapport de Stage LICENCE PRO A2I. Société INFHOTIK. Nicolas PLAZE
Rapport de Stage LICENCE PRO A2I Société INFHOTIK Nicolas PLAZE Année 2001-2002 1 I. L ENTREPRISE 1. Raison sociale 2. Activité 3. Personnel 4. L offre infhotik hôtel 5. Les projets SOMMAIRE II. OBJECTIFS
Plus en détailJava Licence Professionnelle CISII, 2009-10
Java Licence Professionnelle CISII, 2009-10 Cours 4 : Programmation structurée (c) http://www.loria.fr/~tabbone/cours.html 1 Principe - Les méthodes sont structurées en blocs par les structures de la programmation
Plus en détail