• Aide
  • Eurêkoi Eurêkoi

Livre

Apprendre à développer un site web avec PHP et MySQL : exercices pratiques et corrigés

Résumé

La première partie présente les bases du langage PHP et ses principales fonctions puis fournit des explications sur la transmission des données entre les pages et sur la librairie graphique. La seconde partie est consacrée au langage SQL, à la connexion à MySQL, à la sécurité, au PDO et à certaines notions d'objet. Avec des codes d'accès pour la version en ligne.


  • Éditeur(s)
  • Date
    • C 2023
  • Notes
    • La couv. porte en plus : "En téléchargement : code source des exercices et scripts SQL, fichiers de configuration" ; "Version en ligne offerte ! pendant 1 an"
    • La 4e de couv. indique : www.editions-eni.fr : Code source des exercices, scripts SQL, fichiers de configuration"
    • Contient un "flashcode" permettant d'accéder à un contenu via Internet
  • Langues
    • Français
  • Description matérielle
    • 1 vol. (605 p.) : ill. ; 21 cm
  • Collections
  • Sujet(s)
  • ISBN
    • 978-2-409-04156-3
  • Indice
  • Quatrième de couverture
    • Apprendre à développer un site web avec PHP et MySQL

      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.


  • Tables des matières
      • Apprendre à développer un site web avec PHP et MySQL

      • Exercices pratiques et corrigés

      • 5e édition

      • Éditions ENI

      • Chapitre 1
      • Introduction
      • 1. Objectif de l'ouvrage15
      • 2. Fonctionnement d'un site web16
      • Chapitre 2
      • Utilisation de WAMP
      • 1. Introduction19
      • 2. Installation de WAMP20
      • 3. Prise en main de WAMP21
      • 4. Création d'une première page PHP23
      • Chapitre 3
      • Les bases du langage PHP
      • 1. Les balises27
      • 1.1 Syntaxe de base27
      • 1.2 Insertion des balises PHP dans du code XHTML28
      • 1.3 Envoi des données au serveur web30
      • 1.4 Insertion de code XHTML avec l'instruction écho32
      • 1.5 Les commentaires33
      • 2. Les variables33
      • 2.1 Affectation33
      • 2.2 Les types de variables34
      • 2.3 Particularité du type string35
      • 2.4 La concaténation36
      • 2.5 Le transtypage38
      • 2.6 Les variables dynamiques40
      • 3. Les constantes41
      • Chapitre 4
      • Les fonctions et structures de contrôle
      • 1. Les conditions43
      • 1.1 if43
      • 1.2 switch48
      • 1.3 match51
      • 2. Les boucles52
      • 2.1 for52
      • 2.2 While53
      • 2.3 do while55
      • 2.4 foreach55
      • 3. Les tableaux56
      • 3.1 Tableaux numériques56
      • 3.2 Tableaux associatifs58
      • 3.3 Constantes de type tableau59
      • 3.4 Parcours d'un tableau60
      • 3.4.1 La boucle for60
      • 3.4.2 La boucle foreach61
      • 3.4.3 La fonction print_r64
      • 3.5 Fonctions sur les tableaux64
      • 3.5.1 Longueur d'un tableau64
      • 3.5.2 Existence d'une valeur dans un tableau65
      • 3.5.3 Existence d'une clé dans un tableau66
      • 3.5.4 Récupération de la première clé d'un tableau67
      • 3.5.5 Tri d'un tableau68
      • 3.5.6 Recherche dans un tableau72
      • 3.5.7 Découper une chaîne dans un tableau73
      • 3.5.8 Regrouper les valeurs d'un tableau dans une chaîne74
      • 3.5.9 Découper une chaîne en morceaux de longueur fixe75
      • 3.5.10 Ajouter des éléments à la fin du tableau76
      • 3.5.11 Suppression d'un élément à la fin du tableau77
      • 3.5.12 Sélection aléatoire d'un élément du tableau78
      • 3.5.13 Vérification si le tableau est une liste79
      • 3.5.14 Remplir un tableau avec une même valeur79
      • 3.5.15 Fusionner plusieurs tableaux80
      • 3.6 Tableaux à plusieurs dimensions81
      • 3.7 Exercices sur les tableaux82
      • 3.7.1 Énoncés82
      • 3.7.2 Corrigés84
      • 4. Traitement de chaînes de caractères87
      • 4.1 Les fonctions de manipulation de chaîne87
      • 4.1.1 strlen()87
      • 4.1.2 substr()88
      • 4.1.3 strstr()89
      • 4.1.4 str_replace()90
      • 4.1.5 trim()91
      • 4.1.6 strtolower()92
      • 4.1.7 strtoupper()92
      • 4.1.8 strpos()93
      • 4.1.9 str_word_count()94
      • 4.1.10 str_pad()96
      • 4.2 Les expressions régulières96
      • 4.2.1 Insensibilité à la casse98
      • 4.2.2 Recherche d'un mot et non d'une chaîne99
      • 4.2.3 Recherches de chaînes avec OU101
      • 4.2.4 Début de chaîne101
      • 4.2.5 Fin de chaîne102
      • 4.2.6 Un caractère dans une classe102
      • 4.2.7 Une plage de caractères dans une classe103
      • 4.2.8 La non-présence d'une plage de caractères dans une classe104
      • 4.2.9 Les quantificateurs105
      • 4.2.10 Les intervalles de reconnaissance107
      • 5. Les opérateurs109
      • 5.1 Les opérateurs de chaîne109
      • 5.1.1 La concaténation109
      • 5.1.2 L'assignation109
      • 5.2 Les opérateurs arithmétiques110
      • 5.2.1 L'addition110
      • 5.2.2 La soustraction111
      • 5.2.3 La multiplication111
      • 5.2.4 La division112
      • 5.2.5 Le modulo112
      • 5.2.6 L'incrémentation113
      • 5.2.7 La décrémentation114
      • 5.2.8 L'exponentiation115
      • 5.3 Les opérateurs de comparaison116
      • 5.3.1 L'égalité116
      • 5.3.2 La différence117
      • 5.3.3 La comparaison118
      • 5.3.4 L'opérateur à trois issues119
      • 5.4 L'opérateur ternaire119
      • 5.5 Les opérateurs logiques121
      • 5.5.1 ET121
      • 5.5.2 OU121
      • 6. Les fonctions124
      • 6.1 Création124
      • 6.2 Les exceptions127
      • 6.3 Retour du type des déclarations128
      • 6.4 Portée des variables132
      • 6.5 Les variables globales134
      • 6.6 Les variables statiques134
      • 6.7 Fonctions utiles135
      • 6.8 Passage par référence138
      • 6.9 Fonctions sur la gestion de fonction139
      • 6.10 Fonctions variables via l'opérateur142
      • 6.11 Décompression des arguments via l'opérateur143
      • 6.12 Arguments nommés144
      • 6.13 Fonctions anonymes144
      • 6.14 Fonctions fléchées146
      • 6.15 Fonctions dynamiques interdites147
      • 6.16 Fonctions générateurs147
      • 6.17 Récursivité149
      • 6.18 Fonctions prédéfinies dans PHP151
      • 6.18.1 Générer un nombre aléatoire151
      • 6.18.2 Arrondir un nombre décimal152
      • 6.18.3 Récupérer la valeur absolue d'un nombre153
      • 6.18.4 Créer un identifiant unique154
      • 6.18.5 Afficher les informations sur PHP154
      • 6.18.6 Envoyer un e-mail156
      • 6.19 Stocker une fonction dans une variable157
      • 6.20 Gérer la mémoire tampon158
      • 6.21 Exercices sur les fonctions159
      • 6.21.1 Énoncés159
      • 6.21.2 Solutions160
      • 7. Les dates163
      • 8. Les fichiers172
      • 8.1 Introduction172
      • 8.2 Lecture rapide173
      • 8.3 Écriture rapide174
      • 8.4 Ouverture et fermeture d'un fichier175
      • 8.5 Lecture et écriture176
      • 8.6 Accès concurrent183
      • 8.7 Manipulation de fichiers184
      • 8.8 Manipulation de répertoires187
      • 9. Les includes194
      • 10. Exercices sur les fichiers196
      • 10.1 Énoncés196
      • 10.2 Corrigés196
      • Chapitre 5
      • Transmettre des données d'une page à l'autre
      • 1. Les variables superglobales199
      • 1.1 $GLOBALS199
      • 1.2 $_SERVER201
      • 1.3 $_ENV204
      • 1.4 $_SESSION206
      • 1.5 $_COOKIE209
      • 1.6 $_FILES211
      • 2. La méthode GET214
      • 2.1 Utilisation de la méthode GET214
      • 2.2 Test de la présence de la variable dans l'URL217
      • 2.3 Test de la valeur de la variable dans l'URL218
      • 2.4 Informations complémentaires220
      • 2.4.1 Paramètres avec le même nom220
      • 2.4.2 Paramètres de type tableau221
      • 2.4.3 Paramètres avec des caractères spéciaux222
      • 3. La méthode POST224
      • 3.1 Utilisation de la méthode POST224
      • 3.2 Les différents éléments du formulaire226
      • 3.2.1 Zone de type texte226
      • 3.2.2 Zone de type mot de passe228
      • 3.2.3 Grande zone de texte229
      • 3.2.4 Liste déroulante à choix unique229
      • 3.2.5 Liste déroulante à choix multiple231
      • 3.2.6 Cases à cocher233
      • 3.2.7 Boutons radio235
      • 3.2.8 Champs cachés236
      • 3.2.9 Bouton de type submit237
      • 3.2.10 Bouton de type reset240
      • 3.2.11 Formulaire complet241
      • 4. La méthode S_REQUEST243
      • 5. Extraction de données246
      • 6. Zones portant le même nom246
      • 7. Plusieurs formulaires dans la même page247
      • 8. Contrôle des données et redirection de pages247
      • 8.1 Introduction247
      • 8.2 Données obligatoires248
      • 8.3 Les filtres248
      • 8.4 Suppression des espaces indésirables249
      • 8.5 Longueur maximale250
      • 8.6 Caractères autorisés250
      • 8.7 Magic quotes252
      • 8.8 Redirection de page253
      • 9. Exercices255
      • 9.1 Énoncés255
      • 9.2 Solutions256
      • Chapitre 6
      • Les effets spéciaux sur une image
      • 1. La librairie GD261
      • 2. Création d'une image261
      • 2.1 Le header261
      • 2.2 Création d'une image vide262
      • 2.3 Création et affichage d'une image complète262
      • 2.4 Résolution de l'image264
      • 3. Texte et couleur265
      • 3.1 La couleur265
      • 3.2 Le texte266
      • 3.3 La transparence267
      • 4. Redimensionnement d'une image267
      • 5. Superposition d'images268
      • 6. Les formes272
      • 7. Différents exemples274
      • 7.1 Exemple 1274
      • 7.2 Exemple 2276
      • Chapitre 7
      • Base de données MySQL
      • 1. Présentation277
      • 1.1 Introduction277
      • 1.2 Structure278
      • 2. phpMyAdmin279
      • 3. Le langage SQL291
      • 3.1 Présentation291
      • 3.2 Lire des données292
      • 3.3 Ecrire des données294
      • 3.4 Filtrer des données297
      • 3.5 Les alias299
      • 3.6 Tri des données300
      • 3.7 Supprimer des données302
      • 3.8 Modifier des données303
      • 3.9 Les jointures305
      • 3.10 Le regroupement310
      • 4. SQL avancé313
      • 4.1 Les fonctions et instructions SQL313
      • 4.1.1 Limiter des données313
      • 4.1.2 Valeurs distinctes314
      • 4.1.3 Convertir en majuscules315
      • 4.1.4 Convertir en minuscules316
      • 4.1.5 Arrondir un nombre décimal317
      • 4.1.6 Valeur absolue d'un nombre décimal317
      • 4.1.7 Nombre aléatoire317
      • 4.1.8 Longueur d'un champ318
      • 4.1.9 Supprimer les espaces d'un champ318
      • 4.1.10 Extraire une sous-chaîne d'un champ319
      • 4.1.11 Concaténer plusieurs champs319
      • 4.1.12 Position d'une chaîne de caractères dans un champ320
      • 4.1.13 Ajout d'une séquence de caractères321
      • 4.1.14 Remplacement d'une chaîne de caractères321
      • 4.1.15 Tester la valeur d'un champ322
      • 4.1.16 Affichage de la date courante323
      • 4.1.17 Extraire la date d'un champ date et heure324
      • 4.1.18 Différence entre deux dates324
      • 4.1.19 Ajout d'un intervalle de temps à une date325
      • 4.1.20 Ajout d'un intervalle de temps à une heure326
      • 4.1.21 Soustraction d'un intervalle de temps à une date327
      • 4.1.22 Soustraction d'un intervalle de temps à une heure327
      • 4.1.23 Unir deux requêtes328
      • 4.2 Les fonctions de chiffrement et de compression329
      • 4.3 La commande SHOW331
      • 4.4 La commande SHOW PROCESSLIST332
      • 4.5 Les expressions rationnelles332
      • 4.6 Les sous-requêtes333
      • 4.7 Les procédures stockées et les fonctions338
      • 4.8 Les autres objets de MySQL345
      • 4.8.1 Les tables345
      • 4.8.2 Les index345
      • 4.8.3 Les vues347
      • 4.8.4 Les déclencheurs347
      • 5. Exercices SQL349
      • 5.1 Énoncés351
      • 5.2 Corrigés354
      • 6. L'accès aux bases de données avec PHP356
      • 6.1 Introduction356
      • 6.2 Connexion357
      • 6.3 Déconnexion359
      • 6.4 Requêtes non préparées359
      • 6.4.1 Lire des données359
      • 6.4.2 Ecrire des données365
      • 6.4.3 Supprimer des données367
      • 6.4.4 Mettre à jour des données368
      • 6.5 Requêtes préparées369
      • 6.5.1 Introduction369
      • 6.5.2 Lire des données370
      • 6.5.3 Écrire des données374
      • 6.5.4 Modifier des données375
      • 6.5.5 Supprimer des données377
      • 6.5.6 Stocker un résultat378
      • 6.5.7 Afficher les erreurs d'une requête préparée380
      • 7. PDO382
      • 7.1 Introduction382
      • 7.2 Connexion383
      • 7.3 Requêtes non préparées386
      • 7.3.1 Lire des données386
      • 7.3.2 Écrire des données388
      • 7.3.3 Supprimer des données390
      • 7.3.4 Mettre à jour des données391
      • 7.4 Requêtes préparées392
      • 7.4.1 Lire des données392
      • 7.4.2 Écrire des données395
      • 7.4.3 Supprimer des données397
      • 7.4.4 Modifier des données398
      • 7.4.5 Appeler une procédure stockée398
      • 8. Exercices401
      • 8.1 Énoncés401
      • 8.2 Corrigés403
      • Chapitre 8
      • L'objet
      • 1. Introduction411
      • 2. Les classes412
      • 2.1 Introduction412
      • 2.2 L'encapsulation413
      • 2.3 Visibilité des attributs et des méthodes413
      • 2.4 Ajout d'une méthode dans une classe414
      • 2.5 Utilisation d'une classe415
      • 2.6 Mettre à jour et lire les attributs de l'instance416
      • 2.7 Passage en paramètre de type objet419
      • 2.8 Le constructeur423
      • 2.9 Le destructeur425
      • 2.10 Exercice427
      • 2.11 Les constantes de classe428
      • 2.12 Les attributs et méthodes statiques430
      • 2.12.1 Méthode statique430
      • 2.12.2 Attribut statique433
      • 2.13 Les exceptions435
      • 2.14 Les types UNION et null437
      • 2.15 Le chaînage des méthodes438
      • 3. L'héritage439
      • 3.1 Introduction439
      • 3.2 Protected443
      • 3.3 Substitution445
      • 3.4 Héritage en cascade448
      • 4. Les classes abstraites449
      • 5. Substitution de méthodes abstraites452
      • 6. Les interfaces453
      • 7. Les énumérations455
      • 8. Les classes readonly456
      • 9. Les classes finales457
      • 10. Les méthodes magiques458
      • 11. Les classes anonymes466
      • 12. Les traits468
      • 13. Uniform Variable Syntax470
      • 14. Les espaces de noms471
      • 15. Autoload475
      • 16. Exercices475
      • 16.1 Énoncés475
      • 16.2 Corrigés481
      • Chapitre 9
      • Configuration
      • 1. Fichier de configuration PHP : php.ini503
      • 2. Fichier de configuration MySQL : my.ini505
      • 3. Fichier de configuration Apache : httpd.conf506
      • Chapitre 10
      • Sécurité
      • 1. Failles XSS509
      • 1.1 XSS non permanent509
      • 1.2 XSS permanent511
      • 1.3 Page d'erreur511
      • 2. Droits sur la base de données512
      • 3. Injection SQL (addslashes)515
      • 4. Vérification de la session516
      • 5. Performances517
      • 5.1 PHP 7517
      • 5.2 Utilisation d'AST519
      • 5.3 Optimiser les performances en PHP520
      • 5.4 Optimiser les performances en MySQL521
      • Chapitre 11
      • Cas pratiques et corrigés
      • 1. Créer un blog (procédural)523
      • 2. Créer un blog (objet)528
      • 3. Créer un blog (MVC)536
      • 4. Créer une newsletter548
      • 5. Créer un flux RSS549
      • 6. Gestion d'un parc informatique en MVC550
      • 7. Créer un site de gestion d'élèves561
      • Index583

  • Origine de la notice:
    • Electre
  • Disponible - 681.227(07) ROL

    Niveau 3 - Informatique