APP-TSWD Apprentissage Par Problèmes Techniques des Sites Web Dynamiques Licence Professionnelle FNEPI Valérie Bellynck, Benjamin Brichet-Billet, Mazen.

Slides:



Advertisements
Présentations similaires
Algorithmes et structures de données avancées Partie Conception de Sites Web dynamiques Cours 11 Patrick Reuter.
Advertisements

Algorithmes et structures de données avancées Partie Conception de Sites Web dynamiques Cours 10 Patrick Reuter.
C++ 6ème cours Patrick Reuter maître de conférences
INTRODUCTION INTRODUCTION ERGONOMIE Tri par cartes Formulaires Interface Installation Lanceur Documentation TECHNOLOGIES XML + XSL CSS Formulaires génériques.
(Classes prédéfinies – API Java)
Cours n°2M2. IST-IE (S. Sidhom) UE 303 Promo. M2 IST-IE 2005/06 Conception dun système d'information multimédia Architecture trois-tiers : PHP/MySQL &
51 Les technologies XML Cours 6 : XML et les architectures N-tiers – Tier Métier Janvier Version 1.0 -
C.
MySQL et PHP.
Design Pattern MVC En PHP5.
PHP mySQL Extension php_mysql. Connexion à une base de données Établir une connexion mysql_connect(string server, string username, string password) –permet.
Chap. 1 Structures séquentielles : listes linéaires
Développement d’applications web
Cours 7 - Les pointeurs, l'allocation dynamique, les listes chaînées
L’utilisation des bases de données
Développement Rapide dApplications Web avec.NET « Mon premier site »
JDBC ou comment manipuler une base de données en Java ?
Les instructions PHP pour l'accès à une base de données MySql
L’utilisation des bases de données
Gestion des bases de données
Structures de données IFT-2000
FICHIERS : Définition : Algorithme général:
MySQL Création des sites dynamiques
PhP-MySQL Pagora 2012/2013 CTD 1 - Presentation de moi ^^
Types de données abstrait et mécanismes d'encapsulation
Standard Template Library
Leçon 1 : notion dobjet IUP Génie Informatique Besançon Méthode et Outils pour la Programmation Françoise Greffier Université de Franche-Comté.
Initiation aux bases de données et à la programmation événementielle
Christine Bonnet SOURCES : « Samples » dOracle, « Oracle 8 » R. Chapuis PRO*C – C ++
CPI/BTS 2 Programmation Web PHP et les Bases de données Prog Web CPI/BTS2 – M. Dravet – 11/03/2004 Dernière modification: 11/03/2004.
PHP & My SQL.
JavaScript Nécessaire Web.
Comment stocke-t-on des données sur un site web ?
PHP 5° PARTIE : LES COOKIES
Cours n°4M2. ESCE (S. Sidhom) Séminaire ( 6-12 Février 2007 ) Promo. M2 ESCE-Tunis 2006/07 Conception d’un système d'information sur Internet Architecture.
JDBC L'API JDBC est utilisée pour utilisée pour intéragir avec une base de données.
Créer des packages.
 Syntaxe du langage PHP
 Requêtes MySQL en PHP Introduction
420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1.
Tutorat en bio-informatique
Tutorat en bio-informatique Le 14 novembre Au programme… Les objets –Propriétés (attributs) –Constructeurs –Méthodes.
1 PHP 5 Notions fondamentales (cours #5) Formation continue – Cégep de Sainte-Foy.
Acquisition d’information sur internet
Cours LCS N°4 Présenté par Mr: LALLALI
G.KEMBELLEC - UP81 Master 2 THYP Cas pratique d’utilisation De simpleXML Un lecteur de RSS Novembre 2009.
Module : Pages Web Dynamiques (Production Électronique Avancée)
 Formulaires HTML : traiter les entrées utilisateur
Master 1 SIGLIS Intégration des données dans l’entreprise Stéphane Tallard JDBC: Java Database Connectivity Master 1 SIGLIS1JDBC.
Centralisation des sites web d’ELTA & Mise en place d’un serveur NAS
Conception de Site Webs Interactifs Cours 7 Patrick Reuter
 Le langage SQL Introduction SQL : Strutured Query Language, est un langage de requête, que l'on retrouve dans divers SGBDR (Access de Microsoft, MySQL,
 Les bases de données MySQL
Cours n°4M1.ist-ie (S. Sidhom) UE 203 Promo. M1 IST-IE 2006/07 Conception d’un système d'information sur Internet Architecture trois-tiers : technologies.
Cours Access TuanLoc NGUYEN. Contact Nguyen TuanLoc Tél: Web:
Les bases de données Séance 8 Jointures.
CPI/BTS 2 Programmation Web Les sites dynamiques Prog Web CPI/BTS2 – M. Dravet – 02/10/2003 Dernière modification: 02/10/2003.
Séance /10/2004 SGBD - Approches & Principes.
Générateur d’applications WEB de gestion de données Génération de la base de données.
Cours n°2 Implémentation et exploitation
Soutenance.  Présentation générale  Architecture & Modélisation  Environnement de travail  Démonstration  Conclusion.
Flash MX – Séance 2 Interactions & ActionScript David Rapin Si28 P06.
Dreamweaver (2) ● les calques (layers) ● les comportements
Les formulaires Les calques Les comportements Les scénarios Les modèles Les feuilles de styles (CSS) La mise en ligne Les formulaires permettent à l’utilisateur.
Les calques Les Template (modèles) Les Comportements Les scénarios Les formulaires Les CSS Le serveur Web de l’UTC Présentation.
APP-TSWD Apprentissage Par Problèmes Techniques des Sites Web Dynamiques Licence Professionnelle FNEPI Valérie Bellynck, Benjamin Brichet-Billet, Mazen.
APP-TSWD Apprentissage Par Problèmes Techniques des Sites Web Dynamiques Licence Professionnelle FNEPI Valérie Bellynck, Benjamin Brichet-Billet, Mazen.
1 Les bases de données Séance 5 -- Le Langage de Définition de Données ou la manœuvre de la structure de la base -- Le Langage de Manœuvre de Données.
APP-TSWD Apprentissage Par Problèmes Techniques des Sites Web Dynamiques Licence Professionnelle FNEPI Valérie Bellynck, Benjamin Brichet-Billet, Mazen.
Transcription de la présentation:

APP-TSWD Apprentissage Par Problèmes Techniques des Sites Web Dynamiques Licence Professionnelle FNEPI Valérie Bellynck, Benjamin Brichet-Billet, Mazen Mahrous Grenoble INP – Pagora 10 novembre 2014 Cours en Réponse à questions, n° 4

Groupe : ? Autres groupes ? ? Profs MySQL ? PhpMyAdmin ? Récupérer les requêtes MySQL dans PhpMyAdmin ? Soutenances formatives Expliquer des programmes types PHP  le programme principal des actions d’un formulaire  la boucle type des traitements d’une ressource (pointeur sur.csv, pointeur sur une ressource de traitement de données mySQL…) Questions reçues

MySQL - API

MAMP-PhpMyAdmin

PhpMyAdmin - CREATE

PhpMyAdmin - SELECT

PhpMyAdmin – formulaire Insertion

PhpMyAdmin - INSERT

PhpMyAdmin – formulaire Modif

PhpMyAdmin - UPDATE

PhpMyAdmin - DELETE

PhpMyAdmin – Formulaire SQL

Manuel officiel mySQL ↪ voir

SHOW COLUMNS FROM [ma_table] versus SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE `TABLE_NAME` = '[ma_table]'

SHOW COLUMNS FROM [ma_table] versus SELECT `COLUMN_TYPE` FROM INFORMATION_SCHEMA.COLUMNS WHERE `TABLE_NAME` = '[ma_table]’ AND `COLUMN_TYPE` LIKE 'enum%'

 Algorithmique : 2 programmes typiques

Ossature/maquette d’une page Web (= « template ») ↪ voir

Les fonctions PHP require() / include() / require_once() / include_once()

Ossature/maquette d’une page Web (= « template ») ↪ voir

Ossature/maquette d’une page Web (= « template ») ↪ voir

Usage des constantes PHP Définit une constante pour tout le script PHP exécuté !! non modifiable Certaines constantes sont pré-définies comme DIRECTORY_SEPARATOR, __FILE__... ↪ voir et ↪ voir Pour les utiliser, juste pas de quotes à mettre

Aide pour déboguer : Affichage de traces

constante prédéfinie faisant partie des « constantes magiques » __FILE__, __DIR__... ↪ voir basename() : fonction PHP qui extrait le nom du fichier dans un chemin

Boucle de traitement d’une ressource 1°) Initialisation de la tête de lecture 2°) Tant que la tête n’est pas dehors, lire un « élément » traiter l’élément - fin du « tant que » 3°) Libération de la mémoire utilisée par la tête de lecture

Boucle de traitement d’une ressource 1°) Initialisation de la tête de lecture 2°) Tant que la tête n’est pas dehors, lire un « élément » traiter l’élément - fin du « tant que » 3°) Libération de la mémoire utilisée par la tête de lecture Exemple : lire les éléments d’un dossier et générer une liste de liens

Boucle de traitement d’une ressource Exemple : lire les lignes d’un fichier.csv et afficher ses valeurs ligne par ligne 1°) Initialisation de la tête de lecture 2°) Tant que la tête n’est pas dehors, lire un « élément » traiter l’élément - fin du « tant que » 3°) Libération de la mémoire utilisée par la tête de lecture

Boucle de traitement d’une ressource Exemple : lire les enregistrements résultants d’une requête mySQL et les stocker dans un tableau PHP 1°) Initialisation de la tête de lecture 2°) Tant que la tête n’est pas dehors, lire un « élément » traiter l’élément - fin du « tant que » 3°) Libération de la mémoire utilisée par la tête de lecture En sortie de fonction, $table contient une table PHP qui correspond aux enregistrements trouvés par la requête mySQL

Boucle de traitement d’une ressource Exemple : lire les enregistrements résultants d’une requête mySQL et les stocker dans un tableau PHP En sortie de fonction, $table contient une table PHP qui correspond aux enregistrements trouvés par la requête mySQL La fonction définie, gest_lasts($nb), récupère les $nb derniers enregistrements de la table dont le nom a été spécifié dans la constante TABLE précédemment

Séquencement des actions d’un formulaire : le « Contrôle » 1°) gros « switch » qui séquence les affichages et les actions ↪ voir identique à

Séquencement des actions d’un formulaire : les « vues » 1°) des « include »s pour les formulaires liés ↪ voir

Séquencement des actions d’un formulaire : le « modèle » 2°) fonctions pour réaliser les actions ↪ voir insertion des fonctions qui contiennent les requêtes mySQL insertion du fichier de connexion entre les 2 serveurs appel des fonctions qui font l’action avec la base de données

Séquencement des actions d’un formulaire 3°) ajustement du « Contrôle » ↪ voir appel des fonctions qui font l’action avec la base de données … reste à faire ici

4°) Codage du « Modèle » dans un fichier externe regroupant les fonctions pour réaliser les actions ↪ voir On veut que PHP transmette la requête d’insertion à MySQL INSERT INTO … ( …, … …) VALUES ( …, … …) ; On veut que PHP transmette la requête de mise à jour à MySQL UPDATE … SET … = … AND … = … WHERE `id` = … ;

Architecture MVC Modèle – Contrôle - Vues Intérêt de l’architecture MCV : Si on veut changer de « support » pour mémoriser les données, on a seulement à modifier le contenu des fonctions qui réalisent les actions Toutes les interfaces Homme-Machine (IHM) d’aujourd’hui sont fait ainsi De nombreux frameworks / environnements de développement (EDI / IDE) imposent ce type d’architecture  passage au développement pour les nouveaux appareils (Android / iOS) EDI = environnement de développement intégré IDE = integrated development environment IHM = interface Homme-Machine Framework = ensemble cohérent de composants logiciels organisés pour structurer l’architecture des programmes ↪ voir et

Fonctions et classes PHP pour MySQL ↪ voir Plusieurs bibliothèques (ou familles de fonctions) permettent à PHP de communiquer avec MySQL. Par exemple : mysql_connect()  est « déprécié aujourd’hui » mysqli_connect()  ne se connecte qu’à MySQL est orienté objet MDB2::connect()  est orienté objet, permet de travailler avec MySQL ou postgre-SQL ou… peut nécessiter une installation spécifique pour PHP new PDO()  est orienté objet permet de travailler avec MySQL ou postgre-SQL ou… est fourni directement avec les dernières version de PHP

 Les objets dans PHP (4 et 5)

Objet : exemple du point (x,y) 2 variables séparées (« scalaires ») : float x, float y; Des structures de données : array(x,y) struct { float x, float y } struct { float x, float y, string nom } + des fonctions comme - définir un point - déplacer un point - supprimer un point  Une structure pour des valeurs ET des « méthodes » + héritage La structure n’est pas la valeur ➙ Le constructeur réserve la mémoire et initialise ➙ Le destructeur libère la mémoire ➙ Un véhicule est un engin à roues permettant de se déplacer ➙ Une voiture est un véhicule à 4 roues … struct point { float x; float y; string nom; } var p = (point) (2,3,’A’); pas en PHP

Utilisation des objets dans PHP

Définition d’une classe et Instance

QCM inspiré des questions des fiches de TD de tiprof