» Introduction
Qu'est-ce que PHP ? Interactivité avec les internautes.
Les différences entre PHP 4 et PHP 5.
Présentation de l'exemple utilisé durant la formation.
» Bases du Langage PHP
Automatisation d'une page Web.
Le client-serveur. Premiers éléments du langage.
Intégration de PHP dans une page HTML.
Variables et fonctions. Librairies.
Fonctions de base, variables serveur et variable PHP.
Contrôles de flux et boucles.
Travaux pratiques
Réalisation de fonctions personnalisées.
» Programmation Orientée Objet (POO)
Rappel UML. Modélisation des classes. Outils.
Classes, propriétés, méthodes. Visibilité et Protection.
Constructeur, destructeur. Appel implicite vs. explicite.
Héritage et agrégation. Propagation. Polymorphisme.
Sérialisation et stockage. Organisation des fichiers.
Travaux pratiques
Réalisation d'une classe PageWeb.
» Premières applications Web en PHP
Les formulaires simples. Passage de variables. Vérification de login/mot de passe. Redirection.
Les variables complexes : tableaux des fonctions.
Travaux pratiques
Réalisation d'un objet de stockage. Réalisation d'un objet Formulaire (texte, select et upload).
» Gestion des sessions utilisateurs
Variables persistantes : Cookies et Session.
Avantages, limitations et précautions.
Variables de session et fonctions liées. Les Cookies.
Sérialisation des variables complexes. Utilisation.
Travaux pratiques
Réalisation d'un objet Panier d'Achat stockable en cookie ou session. Gestion des quantités commandées.
» Utilisation d'une base de données MySQL
Concepts : bases, tables, champs, enregistrements.
Fonctions PHP Mysqli. Introduction au langage SQL.
Requêtes et traitement des résultats.
Travaux pratiques
Création d'une base MySQL et de fiches produits à la volée.
» Une application Web professionnelle
Notions d'architecture multicouches. Principes MVC.
Formulaires complexes. Liaison aux données.
Fonctions avancées de sélection: recherches et tris.
Le graphisme en PHP : de la librairie GD.
Intégration au site.
Travaux pratiques
Réalisation d'un moteur de recherche. Amélioration de la classe SQL. Implémentation multicouches. Intégration des différents modules réalisés.