Ce support sur PHP et MySQL vous permettra de maîtriser le développement étape par étape d'une application collaborative associée à une base de données MySQL, tout en respectant les standards de développement actuels tels que MVC, HTML5 ou Bootstrap.
Le premier chapitre est consacré à l'installation de l'environnement de développement avec Apache, MySQL et PHP sous Windows et sous Linux. Ensuite, le lecteur...
Ce support sur PHP et MySQL vous permettra de maîtriser le développement étape par étape d'une application collaborative associée à une base de données MySQL, tout en respectant les standards de développement actuels tels que MVC, HTML5 ou Bootstrap.
Le premier chapitre est consacré à l'installation de l'environnement de développement avec Apache, MySQL et PHP sous Windows et sous Linux. Ensuite, le lecteur crée les premières pages PHP et la base de données MySQL qui permettra la gestion des utilisateurs. Il est ensuite invité à développer son savoir-faire dans la réalisation d'interfaces web avec des écrans réactifs optimisés pour le mobile.
Dans le chapitre qui suit, le lecteur poursuit dans un cadre MVC à l'aide du framework FPL pour, par exemple, afficher la page d'accueil, réaliser la page de connexion ou encore gérer l'authentification et les demandes des utilisateurs.
Un ensemble de travaux pratiques explore la gestion du temps en PHP/MySQL au travers de la réalisation d'une passerelle avec l'agenda Google. Puis, sortant des architectures classiques, le lecteur associe la technologie PHP à node.js et à MongoDB pour mettre en œuvre un module de messagerie instantanée incluant des fonctionnalités de recherche et de multimédia. Dans un chapitre dédié, il a l'occasion d'étudier la structure du framework FPL et de réaliser des extensions.
Pour finir, il s'entraîne au déploiement de son application PHP, en environnements on-premise et Cloud. L'auteur propose également d'implémenter un SEO basique avec Google Analytics.
Pour les apports théoriques sur ce sujet, Editions ENI édite dans la collection Ressources Informatiques des ouvrages sur PHP et sur MySQL.
Les éléments nécessaires à la réalisation des travaux pratiques sont en téléchargement sur le site www.editions-eni.fr.
Avant-propos
Objectif de ce livre
Comment utiliser ce livre ?
Énoncés Chapitre 1 : Création de l’environnement
Prérequis
Énoncé 1.1 L’environnement de développement
Énoncé 1.2 Structure du site
Énoncé 1.3 Intégrer Bootstrap et définir des modèles de page
Énoncé 1.4 Ajouter un menu défini en JSON
Énoncé 1.5 Enregistrer le profil utilisateur
Énoncé 1.6 Appliquer le thème graphique selon le profil
Chapitre 2 : Gestion des utilisateurs
Prérequis
Énoncé 2.1 Création de la base de données MySQL
Énoncé 2.2 Saisie d’un utilisateur avec un template HTML simple
Énoncé 2.3 Affichage d’un utilisateur avec template réactif (responsive)
Énoncé 2.4 Gestion des équipes
Énoncé 2.5 Un service web pour lister les utilisateurs
Énoncé 2.6 Une page HTML 5 pour afficher les utilisateurs
Chapitre 3 : Les demandes
Prérequis
Énoncé 3.1 Afficher la page d’accueil en MVC
Énoncé 3.2 Réaliser la page de connexion en MVC
Énoncé 3.3 Activer l’authentification
Énoncé 3.4 Brancher l’authentification sur la base de données
Énoncé 3.5 Tables SQL pour les demandes et les classes de données
Énoncé 3.6 Saisir des demandes
Énoncé 3.7 Affichage d’une demande
Énoncé 3.8 Liste des demandes
Énoncé 3.9 Pour aller plus loin : gérer un workflow
Énoncé 3.10 Finaliser la page de liste des demandes
Chapitre 4 : L’agenda
Prérequis
Énoncé 4.1 Initialisation de la base de données
Énoncé 4.2 Le DAO et la couche de service pour l’agenda
Énoncé 4.3 Saisie et modification d’un rendez-vous
Énoncé 4.4 Création d’un composant de sélection de date
Énoncé 4.5 Affichage de la liste des rendez-vous
Énoncé 4.6 Pour aller plus loin : export de l’agenda dans Outlook ou Gmail
Chapitre 5 : La messagerie
Prérequis
Énoncé 5.1 Création d’un fil de discussion instantané avec Node.js et socket.io
Énoncé 5.2 Envoi de message à un utilisateur défini
Énoncé 5.3 Gestion du statut connecté, non disponible, déconnecté
Énoncé 5.4 Envoi des messages offline par mail avec un service Cloud
Chapitre 6 : La recherche et le multimédia
Prérequis
Énoncé 6.1 Installer MongoDB et l’extension PHP
Énoncé 6.2 Journalisation des discussions
Énoncé 6.3 Enrichissement des messages avec du texte riche
Énoncé 6.4 Intégrer du contenu multimédia en streaming
Énoncé 6.5 Stocker et accéder à des données BLOB dans MongoDB
Énoncé 6.6 Rechercher dans les fils de discussion
Chapitre 7 : Le framework PHP léger FPL
Prérequis
Énoncé 7.1 Structure du framework
Énoncé 7.2 La fabrique de contrôleurs et l’injection de dépendances
Énoncé 7.3 Intégrer du scripting dans les vues
Énoncé 7.4 Ajouter des traces
Énoncé 7.5 Une interface pour visualiser les traces
Chapitre 8 : Déployer et exploiter
Prérequis
Énoncé 8.1 Gestionnaire de configuration
Énoncé 8.2 Déployer le site sur le cloud
Énoncé 8.3 Monitoring du site web
Énoncé 8.4 Réaliser un SEO basique avec Google Analytics
CorrigésChapitre 1 : Création de l’environnement
Prérequis
Corrigé 1.1 L’environnement de développement
Corrigé 1.2 Structure du site
Corrigé 1.3 Intégrer Bootstrap et définir des modèles de page
Corrigé 1.4 Ajouter un menu défini en JSON
Corrigé 1.5 Enregistrer le profil utilisateur
Corrigé 1.6 Pour aller plus loin : appliquer le thème graphique selon le profil
Chapitre 2 : Gestion des utilisateurs
Prérequis
Corrigé 2.1 Création de la base de données
Corrigé 2.2 Saisie d’un utilisateur avec un template HTML simple
Corrigé 2.3 Affichage d’un utilisateur avec template réactif (responsive)
Corrigé 2.4 Gestion des équipes
Corrigé 2.5 Un service web pour lister les utilisateurs
Corrigé 2.6 Une page HTML 5 pour afficher les utilisateurs
Chapitre 3 : Les demandes
Prérequis
Corrigé 3.1 Affichage de la page d’accueil en MVC
Corrigé 3.2 Réaliser la page de connexion en MVC
Corrigé 3.3 Activer l’authentification
Corrigé 3.4 Brancher l’authentification sur la base de données
Corrigé 3.5 Tables SQL pour les demandes et les classes de données
Corrigé 3.6 Saisir des demandes
Corrigé 3.7 Affichage d’une demande
Corrigé 3.8 Liste des demandes
Corrigé 3.9 Pour aller plus loin : gérer un workflow
Corrigé 3.10 Finaliser la page de liste des demandes
Chapitre 4 : L’agenda
Prérequis
Corrigé 4.1 Initialisation de la base de données
Corrigé 4.2 Le DAO et la couche de service pour l’agenda
Corrigé 4.3 Saisie et modification d’un rendez-vous
Corrigé 4.4 Création d’un composant de sélection de date
Corrigé 4.5 Affichage de la liste des rendez-vous
Corrigé 4.6 Pour aller plus loin : export de l’agenda dans Outlook ou Gmail
Chapitre 5 : La messagerie
Prérequis
Corrigé 5.1 Création d’un fil de discussion instantané avec Node.js et socket.io
Corrigé 5.2 Envoi de message à un utilisateur défini
Corrigé 5.3 Gestion du statut connecté, non disponible, déconnecté
Corrigé 5.4 Envoi des messages offline par mail avec un service Cloud
Chapitre 6 : La recherche et le multimédia
Prérequis
Corrigé 6.1 Installer MongoDB et l’extension PHP
Corrigé 6.2 Journalisation des discussions
Corrigé 6.3 Enrichissement des messages avec du texte riche
Corrigé 6.4 Intégrer du contenu multimédia en streaming
Corrigé 6.5 Stocker et accéder à des données BLOB dans MongoDB
Corrigé 6.6 Rechercher dans les fils de discussion
Chapitre 7 : Le framework PHP léger FPL
Prérequis
Corrigé 7.1 Structure du framework
Corrigé 7.2 La fabrique de contrôleurs et l’injection de dépendances
Corrigé 7.3 Intégrer du scripting dans les vues
Corrigé 7.4 Ajouter des traces
Corrigé 7.5 Une interface pour visualiser les traces
Chapitre 8 : Déployer et exploiter
Prérequis
Corrigé 8.1 Gestionnaire de configuration
Corrigé 8.2 Déployer le site sur le cloud
Corrigé 8.3 Monitoring du site web
Corrigé 8.4 Réaliser un SEO basique avec Google Analytics
Index
Brice-Arnaud GUÉRIN
Ingénieur ESIEA, Brice-Arnaud GUERIN est Directeur de programmes chez Kantar et auteur aux Editions ENI depuis 2003. Ses compétences en développement et son désir de partager ses connaissances l'ont naturellement conduit à l'écriture d'ouvrages consacrés à la conduite de projets et à la réalisation d'applications (C++, .NET, PHP).