Apprendre à développer un site web avec PHP et MySQL Exercices pratiques et corrigés (4e édition)

22600 CFA

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 7 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, un module de paiement en ligne PayPal…) et propose aussi leurs corrigés

Table des matières

  • Introduction
    • 1. Objectif de l’ouvrage
    • 2. Fonctionnement d’un site web
  • Utilisation de WAMP
    • 1. Introduction
    • 2. Installation de WAMP
    • 3. Prise en main de WAMP
    • 4. Création d’une première page PHP
  • Les bases du langage PHP
    • 1. Les balises
      • 1.1 Syntaxe de base
      • 1.2 Insertion des balises PHP dans du code XHTML
      • 1.3 Envoi des données au serveur web
      • 1.4 Insertion de code XHTML avec l’instruction echo
      • 1.5 Les commentaires
    • 2. Les variables
      • 2.1 Affectation
      • 2.2 Les types de variables
      • 2.3 Particularité du type string
      • 2.4 La concaténation
      • 2.5 Le transtypage
      • 2.6 Les variables dynamiques
    • 3. Les constantes
  • Les fonctions et structures de contrôle
    • 1. Les conditions
      • 1.1 if
      • 1.2 switch
    • 2. Les boucles
      • 2.1 for
      • 2.2 While
      • 2.3 do while
      • 2.4 foreach
    • 3. Les tableaux
      • 3.1 Tableaux numériques
      • 3.2 Tableaux associatifs
      • 3.3 Constantes de type tableau
      • 3.4 Parcours d’un tableau
        • 3.4.1 La boucle for
        • 3.4.2 La boucle foreach
        • 3.4.3 La fonction print_r
      • 3.5 Fonctions sur les tableaux
        • 3.5.1 Longueur d’un tableau
        • 3.5.2 Existence d’une valeur dans un tableau
        • 3.5.3 Existence d’une clé dans un tableau
        • 3.5.4 Tri d’un tableau
        • 3.5.5 Recherche dans un tableau
        • 3.5.6 Découper une chaîne dans un tableau
        • 3.5.7 Regrouper les valeurs d’un tableau dans une chaîne
        • 3.5.8 Découper une chaîne en morceaux de longueur fixe
        • 3.5.9 Ajouter des éléments à la fin du tableau
        • 3.5.10 Suppression d’un élément à la fin du tableau
        • 3.5.11 Sélection aléatoire d’un élément du tableau
      • 3.6 Tableaux à plusieurs dimensions
      • 3.7 Exercices sur les tableaux
        • 3.7.1 Énoncés
        • 3.7.2 Corrigés
    • 4. Traitement de chaînes de caractères
      • 4.1 Les fonctions de manipulation de chaîne
        • 4.1.1 strlen()
        • 4.1.2 substr()
        • 4.1.3 strstr()
        • 4.1.4 str_replace()
        • 4.1.5 trim()
        • 4.1.6 strtolower()
        • 4.1.7 strtoupper()
        • 4.1.8 strpos()
        • 4.1.9 str_word_count()
        • 4.1.10 str_pad()
      • 4.2 Les expressions régulières
        • 4.2.1 Insensibilité à la casse
        • 4.2.2 Recherche d’un mot et non d’une chaîne
        • 4.2.3 Recherches de chaînes avec OU
        • 4.2.4 Début de chaîne
        • 4.2.5 Fin de chaîne
        • 4.2.6 Un caractère dans une classe
        • 4.2.7 Une plage de caractères dans une classe
        • 4.2.8 La non-présence d’une plage de caractères dans une classe
        • 4.2.9 Les quantificateurs
        • 4.2.10 Les intervalles de reconnaissance
    • 5. Les opérateurs
      • 5.1 Les opérateurs de chaîne
        • 5.1.1 La concaténation
        • 5.1.2 L’assignation
      • 5.2 Les opérateurs arithmétiques
        • 5.2.1 L’addition
        • 5.2.2 La soustraction
        • 5.2.3 La multiplication
        • 5.2.4 La division
        • 5.2.5 Le modulo
        • 5.2.6 L’incrémentation
        • 5.2.7 La décrémentation
        • 5.2.8 L’exponentiation
      • 5.3 Les opérateurs de comparaison
        • 5.3.1 L’égalité
        • 5.3.2 La différence
        • 5.3.3 La comparaison
        • 5.3.4 L’opérateur à trois issues
      • 5.4 L’opérateur ternaire
      • 5.5 Les opérateurs logiques
        • 5.5.1 ET
        • 5.5.2 OU
    • 6. Les fonctions
      • 6.1 Création
      • 6.2 Les exceptions
      • 6.3 Retour du type des déclarations
      • 6.4 Portée des variables
      • 6.5 Les variables globales
      • 6.6 Les variables statiques
      • 6.7 Fonctions utiles
      • 6.8 Passage par référence
      • 6.9 Fonctions sur la gestion de fonction
      • 6.10 Fonctions variables via l’opérateur …
      • 6.11 Décompression des arguments via l’opérateur …
      • 6.12 Fonction anonyme
      • 6.13 Fonctions dynamiques interdites
      • 6.14 Fonction générateur
      • 6.15 Récursivité
      • 6.16 Fonctions prédéfinies dans PHP
        • 6.16.1 Générer un nombre aléatoire
        • 6.16.2 Arrondir un nombre décimal
        • 6.16.3 Récupérer la valeur absolue d’un nombre
        • 6.16.4 Créer un identifiant unique
        • 6.16.5 Afficher les informations sur PHP
        • 6.16.6 Envoyer un e-mail
      • 6.17 Stocker une fonction dans une variable
      • 6.18 Gérer la mémoire tampon
      • 6.19 Exercices sur les fonctions
        • 6.19.1 Énoncés
        • 6.19.2 Solutions
    • 7. Les dates
    • 8. Les fichiers
      • 8.1 Introduction
      • 8.2 Lecture rapide
      • 8.3 Écriture rapide
      • 8.4 Ouverture et fermeture d’un fichier
      • 8.5 Lecture et écriture
      • 8.6 Accès concurrent
      • 8.7 Manipulation de fichiers
      • 8.8 Manipulation de répertoires
    • 9. Les includes
    • 10. Exercices sur les fichiers
      • 10.1 Énoncés
      • 10.2 Corrigés
  • Transmettre des données d’une page à l’autre
    • 1. Les variables superglobales
      • 1.1 $GLOBALS
      • 1.2 $_SERVER
      • 1.3 $_ENV
      • 1.4 $_SESSION
      • 1.5 Les options de Session
      • 1.6 $_COOKIE
      • 1.7 $_FILES
    • 2. La méthode GET
      • 2.1 Utilisation de la méthode GET
      • 2.2 Test de la présence de la variable dans l’URL
      • 2.3 Test de la valeur de la variable dans l’URL
      • 2.4 Informations complémentaires
        • 2.4.1 Paramètres avec le même nom
        • 2.4.2 Paramètres de type tableau
        • 2.4.3 Paramètres avec des caractères spéciaux
    • 3. La méthode POST
      • 3.1 Utilisation de la méthode POST
      • 3.2 Les différents éléments du formulaire
        • 3.2.1 Zone de type texte
        • 3.2.2 Zone de type mot de passe
        • 3.2.3 Grande zone de texte
        • 3.2.4 Liste déroulante à choix unique
        • 3.2.5 Liste déroulante à choix multiple
        • 3.2.6 Cases à cocher
        • 3.2.7 Boutons radio
        • 3.2.8 Champs cachés
        • 3.2.9 Bouton de type submit
        • 3.2.10 Bouton de type reset
        • 3.2.11 Formulaire complet
    • 4. La méthode $_REQUEST
    • 5. Extraction de données
    • 6. Zones portant le même nom
    • 7. Plusieurs formulaires dans la même page
    • 8. Contrôle des données et redirection de pages
      • 8.1 Introduction
      • 8.2 Données obligatoires
      • 8.3 Les filtres
      • 8.4 Suppression des espaces indésirables
      • 8.5 Longueur maximale
      • 8.6 Caractères autorisés
      • 8.7 Magic quotes
      • 8.8 Redirection de page
    • 9. Exercices
      • 9.1 Énoncés
      • 9.2 Solutions
  • Les effets spéciaux sur une image
    • 1. La librairie GD
    • 2. Création d’une image
      • 2.1 Le header
      • 2.2 Création d’une image vide
      • 2.3 Création et affichage d’une image complète
      • 2.4 Résolution de l’image
    • 3. Texte et couleur
      • 3.1 La couleur
      • 3.2 Le texte
      • 3.3 La transparence
    • 4. Redimensionnement d’une image
    • 5. Superposition d’images
    • 6. Les formes
    • 7. Différents exemples
      • 7.1 Exemple 1
      • 7.2 Exemple 2
  • Base de données MySQL
    • 1. Présentation
      • 1.1 Introduction
      • 1.2 Structure
    • 2. phpMyAdmin
    • 3. Le langage SQL
      • 3.1 Présentation
      • 3.2 Lire des données
      • 3.3 Écrire des données
      • 3.4 Filtrer des données
      • 3.5 Les alias
      • 3.6 Tri des données
      • 3.7 Supprimer des données
      • 3.8 Modifier des données
      • 3.9 Les jointures
      • 3.10 Le regroupement
    • 4. SQL avancé
      • 4.1 Les fonctions et instructions SQL
        • 4.1.1 Limiter des données
        • 4.1.2 Valeurs distinctes
        • 4.1.3 Convertir en majuscules
        • 4.1.4 Convertir en minuscules
        • 4.1.5 Arrondir un nombre décimal
        • 4.1.6 Valeur absolue d’un nombre décimal
        • 4.1.7 Nombre aléatoire
        • 4.1.8 Longueur d’un champ
        • 4.1.9 Supprimer les espaces d’un champ
        • 4.1.10 Extraire une sous-chaîne d’un champ
        • 4.1.11 Concaténer plusieurs champs
        • 4.1.12 Position d’une chaîne de caractères dans un champ
        • 4.1.13 Ajout d’une séquence de caractères
        • 4.1.14 Remplacement d’une chaîne de caractères
        • 4.1.15 Tester la valeur d’un champ
        • 4.1.16 Affichage de la date courante
        • 4.1.17 Extraire la date d’un champ date et heure
        • 4.1.18 Différence entre deux dates
        • 4.1.19 Ajout d’un intervalle de temps à une date
        • 4.1.20 Ajout d’un intervalle de temps à une heure
        • 4.1.21 Soustraction d’un intervalle de temps à une date
        • 4.1.22 Soustraction d’un intervalle de temps à une heure
        • 4.1.23 Unir deux requêtes
      • 4.2 Les fonctions de chiffrement et de compression
      • 4.3 La commande SHOW
      • 4.4 La commande SHOW PROCESSLIST
      • 4.5 Les expressions rationnelles
      • 4.6 Les sous-requêtes
      • 4.7 Les procédures stockées et les fonctions
      • 4.8 Les autres objets de MySQL
        • 4.8.1 Les tables
        • 4.8.2 Les index
        • 4.8.3 Les vues
        • 4.8.4 Les déclencheurs
    • 5. Exercices SQL
      • 5.1 Énoncés
      • 5.2 Corrigés
    • 6. L’accès aux bases de données avec PHP
      • 6.1 Introduction
      • 6.2 Connexion
      • 6.3 Déconnexion
      • 6.4 Requêtes non préparées
        • 6.4.1 Lire des données
        • 6.4.2 Écrire des données
        • 6.4.3 Supprimer des données
        • 6.4.4 Mettre à jour des données
      • 6.5 Requêtes préparées
        • 6.5.1 Introduction
        • 6.5.2 Lire des données
        • 6.5.3 Écrire des données
        • 6.5.4 Modifier des données
        • 6.5.5 Supprimer des données
        • 6.5.6 Stocker un résultat
        • 6.5.7 Afficher les erreurs d’une requête préparée
    • 7. PDO
      • 7.1 Introduction
      • 7.2 Connexion
      • 7.3 Requêtes non préparées
        • 7.3.1 Lire des données
        • 7.3.2 Écrire des données
        • 7.3.3 Supprimer des données
        • 7.3.4 Mettre à jour des données
      • 7.4 Requêtes préparées
        • 7.4.1 Lire des données
        • 7.4.2 Écrire des données
        • 7.4.3 Supprimer des données
        • 7.4.4 Modifier des données
        • 7.4.5 Appeler une procédure stockée
    • 8. Exercices
      • 8.1 Énoncés
      • 8.2 Corrigés
  • L’objet
    • 1. Introduction
    • 2. Les classes
      • 2.1 Introduction
      • 2.2 L’encapsulation
      • 2.3 Visibilité des attributs et des méthodes
      • 2.4 Ajout d’une méthode dans une classe
      • 2.5 Utilisation d’une classe
      • 2.6 Mettre à jour et lire les attributs de l’instance
      • 2.7 Passage en paramètre de type objet
      • 2.8 Le constructeur
      • 2.9 Le destructeur
      • 2.10 Exercice
      • 2.11 Les constantes de classe
      • 2.12 Les attributs et méthodes statiques
        • 2.12.1 Méthode statique
        • 2.12.2 Attribut statique
      • 2.13 Les exceptions
    • 3. L’héritage
      • 3.1 Introduction
      • 3.2 Protected
      • 3.3 Substitution
      • 3.4 Héritage en cascade
    • 4. Les classes abstraites
    • 5. Substitution de méthodes abstraites
    • 6. Les interfaces
    • 7. Les classes finales
    • 8. Les méthodes magiques
    • 9. Les classes anonymes
    • 10. Les traits
    • 11. Uniform Variable Syntax
    • 12. Les espaces de noms
    • 13. Autoload
    • 14. Exercices
      • 14.1 Énoncés
      • 14.2 Corrigés
  • Configuration
    • 1. Fichier de configuration PHP : php.ini
    • 2. Fichier de configuration MySQL : my.ini
    • 3. Fichier de configuration Apache : httpd.conf
  • Sécurité
    • 1. Failles XSS
      • 1.1 XSS non permanent
      • 1.2 XSS permanent
      • 1.3 Page d’erreur
    • 2. Droits sur la base de données
    • 3. Injection SQL (addslashes)
    • 4. Vérification de la session
    • 5. Performances
      • 5.1 PHP 7
      • 5.2 Utilisation d’AST
      • 5.3 Optimiser les performances en PHP
      • 5.4 Optimiser les performances en MySQL
  • Cas pratiques et corrigés
Catégorie

Avis des clients

Il n'y a pas encore d'avis.

Soyez le premier à donner votre avis sur “Apprendre à développer un site web avec PHP et MySQL Exercices pratiques et corrigés (4e édition)”

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Plus d'offres pour ce produit!

Questions et demandes générales

Il n'y a pas encore de demandes de renseignements.