Juste excellent
John-mike C- Livres et vidéos
- Apprendre à développer un site web avec PHP et MySQL - Exercices pratiques et corrigés (5e édition)
Apprendre à développer un site web avec PHP et MySQL Exercices pratiques et corrigés (5e édition)
1 avis
Ce livre s’adresse à un public de développeurs débutants connaissant déjà le HTML et les CSS et qui souhaitent bien comprendre le fonctionnement d’une application web pour créer leurs propres sites web dynamiques avec PHP et MySQL. Dans une première partie, le lecteur installera son environnement de développement WAMP puis découvrira les bases du langage PHP (en version 8 au moment de l’écriture), ses principales fonctions et structures de contrôle, ainsi que des explications sur la...
Consulter des extraits du livre en ligne
Aperçu du livre papier
- Niveau Initié à Confirmé
- Nombre de pages 605 pages
- Parution septembre 2023
- Niveau Initié à Confirmé
- Parution septembre 2023
Ce livre s’adresse à un public de développeurs débutants connaissant déjà le HTML et les CSS et qui souhaitent bien comprendre le fonctionnement d’une application web pour créer leurs propres sites web dynamiques avec PHP et MySQL.
Dans une première partie, le lecteur installera son environnement de développement WAMP puis découvrira les bases du langage PHP (en version 8 au moment de l’écriture), ses principales fonctions et structures de contrôle, ainsi que des explications sur la transmission des données entre les pages et sur la librairie graphique (les effets spéciaux sur une image). Ces apports théoriques sont accompagnés de nombreux exemples.
Il en est de même dans la deuxième partie du livre, consacrée au langage SQL. Le lecteur découvrira ce qu’est une base de données MySQL et les différentes méthodes pour y accéder avec PHP (PDO, SQL Avancé) et comment assurer la sécurité de la base. Un chapitre est également consacré aux premiers pas sur la Programmation Orientée Objet et un autre à la gestion de la configuration et des performances.
Pour que le lecteur puisse se forger une première expérience significative, l’auteur a préparé de nombreux exercices à la fin de chaque chapitre (exemples : comme créer un blog, une newsletter, le MVC...) et propose aussi leurs corrigés.
Des éléments complémentaires sont en téléchargement sur le site www.editions-eni.fr.
Dans une première partie, le lecteur installera son environnement de développement WAMP puis découvrira les bases du langage PHP (en version 8 au moment de l’écriture), ses principales fonctions et structures de contrôle, ainsi que des explications sur la transmission des données entre les pages et sur la librairie graphique (les effets spéciaux sur une image). Ces apports théoriques sont accompagnés de nombreux exemples.
Il en est de même dans la deuxième partie du livre, consacrée au langage SQL. Le lecteur découvrira ce qu’est une base de données MySQL et les différentes méthodes pour y accéder avec PHP (PDO, SQL Avancé) et comment assurer la sécurité de la base. Un chapitre est également consacré aux premiers pas sur la Programmation Orientée Objet et un autre à la gestion de la configuration et des performances.
Pour que le lecteur puisse se forger une première expérience significative, l’auteur a préparé de nombreux exercices à la fin de chaque chapitre (exemples : comme créer un blog, une newsletter, le MVC...) et propose aussi leurs corrigés.
Des éléments complémentaires sont en téléchargement sur le site www.editions-eni.fr.
Téléchargements
Introduction
- Objectif de l'ouvrage
- Fonctionnement d’un site web
Utilisation de WAMP
- Introduction
- Installation de WAMP
- Prise en main de WAMP
- Création d’une première page PHP
Les bases du langage PHP
- Les balises
- 1. Syntaxe de base
- 2. Insertion des balises PHP dans du code XHTML
- 3. Envoi des données au serveur web
- 4. Insertion de code XHTML avec l’instruction echo
- 5. Les commentaires
- Les variables
- 1. Affectation
- 2. Les types de variables
- 3. Particularité du type string
- 4. La concaténation
- 5. Le transtypage
- 6. Les variables dynamiques
- Les constantes
Les fonctions et structures de contrôle
- Les conditions
- 1. if
- 2. switch
- 3. match
- Les boucles
- 1. for
- 2. While
- 3. do while
- 4. foreach
- Les tableaux
- 1. Tableaux numériques
- 2. Tableaux associatifs
- 3. Constantes de type tableau
- 4. Parcours d’un tableau
- a. La boucle for
- b. La boucle foreach
- c. La fonction print_r
- 5. Fonctions sur les tableaux
- a. Longueur d’un tableau
- b. Existence d’une valeur dans un tableau
- c. Existence d’une clé dans un tableau
- d. Récupération de la premièreclé d’un tableau
- e. Tri d’un tableau
- f. Recherche dans un tableau
- g. Découper une chaîne dans un tableau
- h. Regrouper les valeurs d’un tableau dans une chaîne
- i. Découper une chaîne en morceauxde longueur fixe
- j. Ajouter des éléments à lafin du tableau
- k. Suppression d’un élément à lafin du tableau
- l. Sélection aléatoire d’un élémentdu tableau
- m. Vérification si le tableau est une liste
- n. Remplir un tableau avec une même valeur
- o. Fusionner plusieurs tableaux
- 6. Tableaux à plusieurs dimensions
- 7. Exercices sur les tableaux
- a. Énoncés
- b. Corrigés
- 1. Les fonctions de manipulation de chaîne
- a. strlen()
- b. substr()
- c. strstr()
- d. str_replace()
- e. trim()
- f. strtolower()
- g. strtoupper()
- h. strpos()
- i. str_word_count()
- j. str_pad()
- a. Insensibilité à la casse
- b. Recherche d’un mot et non d’une chaîne
- c. Recherches de chaînes avec OU
- d. Début de chaîne
- e. Fin de chaîne
- f. Un caractère dans une classe
- g. Une plage de caractères dans une classe
- h. La non-présence d’une plage de caractèresdans une classe
- i. Les quantificateurs
- j. Les intervalles de reconnaissance
- 1. Les opérateurs de chaîne
- a. La concaténation
- b. L’assignation
- a. L’addition
- b. La soustraction
- c. La multiplication
- d. La division
- e. Le modulo
- f. L’incrémentation
- g. La décrémentation
- h. L’exponentiation
- a. L’égalité
- b. La différence
- c. La comparaison
- d. L’opérateur à trois issues
- a. ET
- b. OU
- 1. Création
- 2. Les exceptions
- 3. Retour du type des déclarations
- 4. Portée des variables
- 5. Les variables globales
- 6. Les variables statiques
- 7. Fonctions utiles
- 8. Passage par référence
- 9. Fonctions sur la gestion de fonction
- 10. Fonctions variables via l’opérateur...
- 11. Décompression des arguments via l’opérateur...
- 12. Arguments nommés
- 13. Fonctions anonymes
- 14. Fonctions fléchées
- 15. Fonctions dynamiques interdites
- 16. Fonctions générateurs
- 17. Récursivité
- 18. Fonctions prédéfinies dans PHP
- a. Générer un nombre aléatoire
- b. Arrondir un nombre décimal
- c. Récupérer la valeur absolue d’unnombre
- d. Créer un identifiant unique
- e. Afficher les informations sur PHP
- f. Envoyer un e-mail
- a. Énoncés
- b. Solutions
- 1. Introduction
- 2. Lecture rapide
- 3. Écriture rapide
- 4. Ouverture et fermeture d’un fichier
- 5. Lecture et écriture
- 6. Accès concurrent
- 7. Manipulation de fichiers
- 8. Manipulation de répertoires
- 1. Énoncés
- 2. Corrigés
Transmettre des données d'une page à l'autre
- Les variables superglobales
- 1. $GLOBALS
- 2. $_SERVER
- 3. $_ENV
- 4. $_SESSION
- 5. $_COOKIE
- 6. $_FILES
- La méthode GET
- 1. Utilisation de la méthode GET
- 2. Test de la présence de la variable dans l’URL
- 3. Test de la valeur de la variable dansl’URL
- 4. Informations complémentaires
- a. Paramètres avec le même nom
- b. Paramètres de type tableau
- c. Paramètres avec des caractères spéciaux
- 1. Utilisation de la méthode POST
- 2. Les différents élémentsdu formulaire
- a. Zone de type texte
- b. Zone de type mot de passe
- c. Grande zone de texte
- d. Liste déroulante à choix unique
- e. Liste déroulante à choix multiple
- f. Cases à cocher
- g. Boutons radio
- h. Champs cachés
- i. Bouton de type submit
- j. Bouton de type reset
- k. Formulaire complet
- 1. Introduction
- 2. Données obligatoires
- 3. Les filtres
- 4. Suppression des espaces indésirables
- 5. Longueur maximale
- 6. Caractères autorisés
- 7. Magic quotes
- 8. Redirection de page
- 1. Énoncés
- 2. Solutions
Les effets spéciaux sur une image
- La librairie GD
- Création d'une image
- 1. Le header
- 2. Création d’une image vide
- 3. Création et affichage d’une image complète
- 4. Résolution de l’image
- Texte et couleur
- 1. La couleur
- 2. Le texte
- 3. La transparence
- Redimensionnement d’une image
- Superposition d’images
- Les formes
- Différents exemples
- 1. Exemple 1
- 2. Exemple 2
Base de données MySQL
- Présentation
- 1. Introduction
- 2. Structure
- phpMyAdmin
- Le langage SQL
- 1. Présentation
- 2. Lire des données
- 3. Écrire des données
- 4. Filtrer des données
- 5. Les alias
- 6. Tri des données
- 7. Supprimer des données
- 8. Modifier des données
- 9. Les jointures
- 10. Le regroupement
- SQL avancé
- 1. Les fonctions et instructions SQL
- a. Limiter des données
- b. Valeurs distinctes
- c. Convertir en majuscules
- d. Convertir en minuscules
- e. Arrondir un nombre décimal
- f. Valeur absolue d’un nombre décimal
- g. Nombre aléatoire
- h. Longueur d’un champ
- i. Supprimer les espaces d’un champ
- j. Extraire une sous-chaîne d’un champ
- k. Concaténer plusieurs champs
- l. Position d’une chaîne de caractèresdans un champ
- m. Ajout d’une séquence de caractères
- n. Remplacement d’une chaîne de caractères
- o. Tester la valeur d’un champ
- p. Affichage de la date courante
- q. Extraire la date d’un champ date et heure
- r. Différence entre deux dates
- s. Ajout d’un intervalle de temps à une date
- t. Ajout d’un intervalle de temps à une heure
- u. Soustraction d’un intervalle de temps à unedate
- v. Soustraction d’un intervalle de temps à uneheure
- w. Unir deux requêtes
- 1. Les fonctions et instructions SQL
- 2. Les fonctions de chiffrement et de compression
- 3. La commande SHOW
- 4. La commande SHOW PROCESSLIST
- 5. Les expressions rationnelles
- 6. Les sous-requêtes
- 7. Les procédures stockées et les fonctions
- 8. Les autres objets de MySQL
- a. Les tables
- b. Les index
- c. Les vues
- d. Les déclencheurs
- 1. Énoncés
- 2. Corrigés
- 1. Introduction
- 2. Connexion
- 3. Déconnexion
- 4. Requêtes non préparées
- a. Lire des données
- b. Écrire des données
- c. Supprimer des données
- d. Mettre à jour des données
- a. Introduction
- b. Lire des données
- c. Écrire des données
- d. Modifier des données
- e. Supprimer des données
- f. Stocker un résultat
- g. Afficher les erreurs d’une requête préparée
- 1. Introduction
- 2. Connexion
- 3. Requêtes non préparées
- a. Lire des données
- b. Écrire des données
- c. Supprimer des données
- d. Mettre à jour des données
- a. Lire des données
- b. Écrire des données
- c. Supprimer des données
- d. Modifier des données
- e. Appeler une procédure stockée
- 1. Énoncés
- 2. Corrigés
L’objet
- Introduction
- Les classes
- 1. Introduction
- 2. L’encapsulation
- 3. Visibilité des attributs et des méthodes
- 4. Ajout d’une méthode dans une classe
- 5. Utilisation d’une classe
- 6. Mettre à jour et lire les attributs de l’instance
- 7. Passage en paramètre de type objet
- 8. Le constructeur
- 9. Le destructeur
- 10. Exercice
- 11. Les constantes de classe
- 12. Les attributs et méthodes statiques
- a. Méthode statique
- b. Attribut statique
- 13. Les exceptions
- 14. Les types UNION et null
- 15. Le chaînage des méthodes
- 1. Introduction
- 2. Protected
- 3. Substitution
- 4. Héritage en cascade
- 1. Énoncés
- 2. Corrigés
Configuration
- Fichier de configuration PHP : php.ini
- Fichier de configuration MySQL : my.ini
- Fichier de configuration Apache : httpd.conf
Sécurité
- Failles XSS
- 1. XSS non permanent
- 2. XSS permanent
- 3. Page d’erreur
- Droits sur la base de données
- Injection SQL (addslashes)
- Vérification de la session
- Performances
- 1. PHP 7
- 2. Utilisation d’AST
- 3. Optimiser les performances en PHP
- 4. Optimiser les performances en MySQL
Cas pratiques et corrigés
- Créer un blog (procédural)
- Créer un blog (objet)
- Créer un blog (MVC)
- Créer une newsletter
- Créer un flux RSS
- Gestion d’un parc informatique en MVC
- Créer un site de gestion d'élèves
Olivier ROLLET
Titulaire d’un diplôme d’ingénieur maître en Génie électrique et Informatique Industrielle, Olivier ROLLET a travaillé comme développeur sur de nombreux projets de sites web pendant 12 ans. Il est aujourd’hui formateur dans le domaine du développement autour des nouvelles technologies web et connaît parfaitement les attentes des lecteurs néophytes.
En savoir plus