Concevez votre site web avec PHP et MySQL Par Mathieu Nebra (Mateo21) www.openc
Concevez votre site web avec PHP et MySQL Par Mathieu Nebra (Mateo21) www.openclassrooms.com Licence Creative Commons 6 2.0 Dernière mise à jour le 26/07/2013 Sommaire 2 Sommaire ........................................................................................................................................... 6 Lire aussi ............................................................................................................................................ 8 Concevez votre site web avec PHP et MySQL .................................................................................. 9 Partie 1 : Les bases de PHP ............................................................................................................... 9 Introduction à PHP ............................................................................................................................................................ 9 Les sites statiques et dynamiques .............................................................................................................................................................................. 9 Comment fonctionne un site web ? ............................................................................................................................................................................. 10 Cas d'un site statique ................................................................................................................................................................................................ 11 Cas d'un site dynamique ........................................................................................................................................................................................... 11 Les langages du Web ................................................................................................................................................................................................ 11 Pour un site statique : HTML et CSS ......................................................................................................................................................................... 12 Pour un site dynamique : ajoutez PHP et MySQL ..................................................................................................................................................... 13 PHP génère du HTML ............................................................................................................................................................................................... 13 Et la concurrence ? ................................................................................................................................................................................................... 13 Les concurrents de PHP ........................................................................................................................................................................................... 14 Les concurrents de MySQL ....................................................................................................................................................................................... 14 Plusieurs combinaisons sont possibles ..................................................................................................................................................................... 14 En résumé ................................................................................................................................................................................................................. 16 Préparer son ordinateur .................................................................................................................................................. 16 De quels programmes a-t-on besoin ? ...................................................................................................................................................................... 16 Avec un site statique ................................................................................................................................................................................................. 16 Avec un site dynamique ............................................................................................................................................................................................ 17 Sous Windows : WAMP ............................................................................................................................................................................................ 21 Sous Mac OS X : MAMP ........................................................................................................................................................................................... 24 Sous Linux : XAMPP ................................................................................................................................................................................................. 27 Utiliser un bon éditeur de fichiers .............................................................................................................................................................................. 28 Sous Windows .......................................................................................................................................................................................................... 32 Sous Mac OS X ......................................................................................................................................................................................................... 32 Sous Linux ................................................................................................................................................................................................................. 33 En résumé ................................................................................................................................................................................................................. 34 Premiers pas avec PHP .................................................................................................................................................. 34 Les balises PHP ........................................................................................................................................................................................................ 34 La forme d'une balise PHP ........................................................................................................................................................................................ 35 Insérer une balise PHP au milieu du code HTML ..................................................................................................................................................... 36 Afficher du texte ........................................................................................................................................................................................................ 36 L'instruction echo ...................................................................................................................................................................................................... 38 Enregistrer une page PHP ........................................................................................................................................................................................ 38 Tester la page PHP ................................................................................................................................................................................................... 39 Comment PHP génère du code HTML ...................................................................................................................................................................... 40 Les commentaires ..................................................................................................................................................................................................... 40 Les commentaires monolignes ................................................................................................................................................................................. 41 Les commentaires multilignes ................................................................................................................................................................................... 41 En résumé ................................................................................................................................................................................................................. 41 Inclure des portions de page ........................................................................................................................................... 42 Le principe ................................................................................................................................................................................................................. 42 Le problème .............................................................................................................................................................................................................. 43 La solution ................................................................................................................................................................................................................. 43 La pratique ................................................................................................................................................................................................................ 45 En résumé ................................................................................................................................................................................................................. 46 Les variables ................................................................................................................................................................... 47 Qu'est-ce qu'une variable ? ....................................................................................................................................................................................... 47 Un nom et une valeur ................................................................................................................................................................................................ 47 Les différents types de variables ............................................................................................................................................................................... 48 Affecter une valeur à une variable ............................................................................................................................................................................. 48 Premières manipulations de variables ...................................................................................................................................................................... 49 Utiliser les types de données .................................................................................................................................................................................... 51 Afficher et concaténer des variables ......................................................................................................................................................................... 51 Afficher le contenu d'une variable ............................................................................................................................................................................. 51 La concaténation ....................................................................................................................................................................................................... 53 Faire des calculs simples .......................................................................................................................................................................................... 53 Les opérations de base : addition, soustraction… .................................................................................................................................................... 54 Le modulo ................................................................................................................................................................................................................. 54 Et les autres opérations ? ......................................................................................................................................................................................... 54 En résumé ................................................................................................................................................................................................................. 55 Les conditions ................................................................................................................................................................. 55 La structure de base : if… else ................................................................................................................................................................................. 55 Les symboles à connaître ......................................................................................................................................................................................... 55 La structure if… else ................................................................................................................................................................................................. 57 Le cas des booléens ................................................................................................................................................................................................. 58 Des conditions multiples ........................................................................................................................................................................................... 59 L'astuce bonus .......................................................................................................................................................................................................... 60 Une alternative pratique : switch ............................................................................................................................................................................... 62 Les ternaires : des conditions condensées ............................................................................................................................................................... 63 En résumé ................................................................................................................................................................................................................. 2/308 www.openclassrooms.com 63 Les boucles ..................................................................................................................................................................... 64 Une boucle simple : while ......................................................................................................................................................................................... 66 Une boucle plus complexe : for ................................................................................................................................................................................. 67 En résumé ................................................................................................................................................................................................................. 67 Les fonctions ................................................................................................................................................................... 68 Qu'est-ce qu'une fonction ? ....................................................................................................................................................................................... 68 Dialogue avec une fonction ....................................................................................................................................................................................... 69 Les fonctions en PHP ................................................................................................................................................................................................ 70 Les fonctions prêtes à l'emploi de PHP ..................................................................................................................................................................... 71 Traitement des chaînes de caractères ...................................................................................................................................................................... 72 Récupérer la date ...................................................................................................................................................................................................... 73 Créer ses propres fonctions ...................................................................................................................................................................................... 73 Premier exemple : dis bonjour au Monsieur .............................................................................................................................................................. 75 Deuxième exemple : calculer le volume d'un cône ................................................................................................................................................... 76 En résumé ................................................................................................................................................................................................................. 77 Les tableaux .................................................................................................................................................................... 77 Les deux types de tableaux ....................................................................................................................................................................................... 77 Les tableaux numérotés ............................................................................................................................................................................................ 79 Les tableaux associatifs ............................................................................................................................................................................................ 80 Parcourir un tableau .................................................................................................................................................................................................. 80 La boucle for .............................................................................................................................................................................................................. 81 La boucle foreach ...................................................................................................................................................................................................... 82 Afficher rapidement un array avec print_r ................................................................................................................................................................. 83 Rechercher dans un tableau ..................................................................................................................................................................................... 83 Vérifier si une clé existe dans l'array : array_key_exists ........................................................................................................................................... 84 Vérifier si une valeur existe dans l'array : in_array .................................................................................................................................................... 84 Récupérer la clé d'une valeur dans l'array : array_search ........................................................................................................................................ 85 En résumé ................................................................................................................................................................................................................. 86 Partie 2 : Transmettre des données de page en page ...................................................................... 86 Transmettre des données avec l'URL ............................................................................................................................. 86 Envoyer des paramètres dans l'URL ......................................................................................................................................................................... 86 Former une URL pour envoyer des paramètres ........................................................................................................................................................ 87 Créer un lien avec des paramètres ........................................................................................................................................................................... 87 Récupérer les paramètres en PHP ........................................................................................................................................................................... 88 Ne faites jamais confiance aux données reçues ! ..................................................................................................................................................... 88 Tous les visiteurs peuvent trafiquer les URL ............................................................................................................................................................. 89 Tester la présence d'un paramètre ............................................................................................................................................................................ 90 Contrôler la valeur des paramètres ........................................................................................................................................................................... 93 En résumé ................................................................................................................................................................................................................. 93 Transmettre des données avec les formulaires .............................................................................................................. 94 Créer la base du formulaire ....................................................................................................................................................................................... 94 La méthode ............................................................................................................................................................................................................... 94 La cible ...................................................................................................................................................................................................................... 95 Les éléments du formulaire ....................................................................................................................................................................................... 95 Les petites zones de texte ........................................................................................................................................................................................ 97 Les grandes zones de texte ...................................................................................................................................................................................... 97 La liste déroulante ..................................................................................................................................................................................................... 98 Les cases à cocher ................................................................................................................................................................................................... 99 Les boutons d'option ................................................................................................................................................................................................. 99 Les champs cachés .................................................................................................................................................................................................. 100 Ne faites jamais confiance aux données reçues : la faille XSS .............................................................................................................................. 100 Pourquoi les formulaires ne sont pas sûrs .............................................................................................................................................................. 102 La faille XSS : attention au code HTML que vous recevez ! ................................................................................................................................... 104 L'envoi de fichiers .................................................................................................................................................................................................... 104 Le formulaire d'envoi de fichier ............................................................................................................................................................................... 105 Le traitement de l'envoi en PHP .............................................................................................................................................................................. 109 En résumé ............................................................................................................................................................................................................... 110 TP : page protégée par mot de passe ........................................................................................................................... 110 Instructions pour réaliser le TP ................................................................................................................................................................................ 110 Les prérequis ........................................................................................................................................................................................................... 110 Votre objectif ............................................................................................................................................................................................................ 110 Comment procéder ? ............................................................................................................................................................................................... 111 À vous de jouer ! ...................................................................................................................................................................................................... 111 Correction ................................................................................................................................................................................................................ 113 Aller plus loin ........................................................................................................................................................................................................... 115 Variables superglobales, sessions et cookies ............................................................................................................... 115 Les variables superglobales .................................................................................................................................................................................... 115 Les sessions ............................................................................................................................................................................................................ 115 Fonctionnement des sessions ................................................................................................................................................................................. 116 Exemple d'utilisation des sessions .......................................................................................................................................................................... 118 L'utilité des sessions en pratique ............................................................................................................................................................................. 118 Les cookies .............................................................................................................................................................................................................. 118 Qu'est-ce qu'un cookie ? ......................................................................................................................................................................................... 119 Écrire un cookie ....................................................................................................................................................................................................... 120 Afficher un cookie .................................................................................................................................................................................................... 121 Modifier un cookie existant ...................................................................................................................................................................................... 121 En résumé ............................................................................................................................................................................................................... 122 Lire et écrire dans un fichier .......................................................................................................................................... 123 Autoriser l'écriture de fichiers (chmod) .................................................................................................................................................................... 124 Ouvrir et fermer un fichier ........................................................................................................................................................................................ 125 Lire et écrire dans un fichier .................................................................................................................................................................................... Sommaire 3/308 www.openclassrooms.com 125 Lire .......................................................................................................................................................................................................................... 126 Écrire ....................................................................................................................................................................................................................... 127 En résumé ............................................................................................................................................................................................................... 127 Partie 3 : Stocker des informations dans une base de données ..................................................... 128 Présentation des bases de données ............................................................................................................................. 128 Le langage SQL et les bases de données .............................................................................................................................................................. 128 Les SGBD s'occupent du stockage ......................................................................................................................................................................... 129 Vous donnez les ordres au SGBD en langage SQL ................................................................................................................................................ 129 PHP fait la jonction entre vous et MySQL ............................................................................................................................................................... 130 Structure d'une base de données ........................................................................................................................................................................... 131 Mais où sont enregistrées les données ? ................................................................................................................................................................ 131 En résumé ............................................................................................................................................................................................................... 132 phpMyAdmin ................................................................................................................................................................. 133 Créer une table ........................................................................................................................................................................................................ 135 Les types de champs MySQL .................................................................................................................................................................................. 136 Les clés primaires ................................................................................................................................................................................................... 137 Modifier une table .................................................................................................................................................................................................... 139 Autres opérations .................................................................................................................................................................................................... 139 SQL ......................................................................................................................................................................................................................... 140 Importer ................................................................................................................................................................................................................... 141 Exporter ................................................................................................................................................................................................................... 143 Opérations ............................................................................................................................................................................................................... 143 Vider ........................................................................................................................................................................................................................ 143 Supprimer ................................................................................................................................................................................................................ 143 En résumé ............................................................................................................................................................................................................... 143 Lire des données ........................................................................................................................................................... 144 Se connecter à la base de données en PHP .......................................................................................................................................................... 144 Comment se connecte-t-on à la base de données en PHP ? ................................................................................................................................. 145 Activer PDO ............................................................................................................................................................................................................. 145 Se connecter à MySQL avec PDO .......................................................................................................................................................................... 146 Tester la présence d'erreurs .................................................................................................................................................................................... 147 Récupérer les données ........................................................................................................................................................................................... 148 Faire une requête .................................................................................................................................................................................................... 148 Votre première requête SQL ................................................................................................................................................................................... 149 Afficher le résultat d'une requête ............................................................................................................................................................................. 151 Afficher seulement le contenu de quelques champs ............................................................................................................................................... 152 Les critères de sélection ......................................................................................................................................................................................... 152 WHERE ................................................................................................................................................................................................................... 153 ORDER BY .............................................................................................................................................................................................................. 154 LIMIT ....................................................................................................................................................................................................................... 156 Construire des requêtes en fonction de variables ................................................................................................................................................... 156 La mauvaise idée : concaténer une variable dans une requête .............................................................................................................................. 156 La solution : les requêtes préparées ....................................................................................................................................................................... 158 Traquer les erreurs .................................................................................................................................................................................................. 159 En résumé ............................................................................................................................................................................................................... 160 Écrire des données ....................................................................................................................................................... 161 INSERT : ajouter des données ................................................................................................................................................................................ 161 La requête INSERT INTO permet d'ajouter une entrée .......................................................................................................................................... 162 Application en PHP ................................................................................................................................................................................................. 162 Insertion de données variables grâce à une requête préparée ............................................................................................................................... 163 UPDATE : modifier des données ............................................................................................................................................................................. 163 La requête UPDATE permet de modifier une entrée ............................................................................................................................................... 164 Application en PHP ................................................................................................................................................................................................. 165 Avec une requête préparée ..................................................................................................................................................................................... 165 DELETE : supprimer des données .......................................................................................................................................................................... 165 En résumé ............................................................................................................................................................................................................... 165 TP : un mini-chat ........................................................................................................................................................... 166 Instructions pour réaliser le TP ................................................................................................................................................................................ 166 Prérequis ................................................................................................................................................................................................................. 166 Objectifs .................................................................................................................................................................................................................. 167 Structure de la table MySQL ................................................................................................................................................................................... 167 Structure des pages PHP ........................................................................................................................................................................................ 168 Rappel sur les consignes de sécurité ..................................................................................................................................................................... 168 À vous de jouer ! ..................................................................................................................................................................................................... 169 Correction ................................................................................................................................................................................................................ 169 minichat.php : formulaire et liste des derniers messages ....................................................................................................................................... 170 minichat_post.php : enregistrement et redirection .................................................................................................................................................. 170 Aller plus loin ........................................................................................................................................................................................................... 171 Les fonctions SQL ......................................................................................................................................................... 172 Les fonctions scalaires ............................................................................................................................................................................................ 172 Utiliser une fonction scalaire SQL ........................................................................................................................................................................... 174 Présentation de quelques fonctions scalaires utiles ............................................................................................................................................... 175 Les fonctions d'agrégat ........................................................................................................................................................................................... 175 Utiliser une fonction d'agrégat SQL ......................................................................................................................................................................... 177 Présentation de quelques fonctions d'agrégat utiles ............................................................................................................................................... 179 GROUP BY et HAVING : le groupement de données ............................................................................................................................................. 179 GROUP BY : grouper des données ......................................................................................................................................................................... 180 HAVING : filtrer les données regroupées ................................................................................................................................................................ uploads/s3/ concevez-votre-site-web-avec-php-et-mysql 3 .pdf
Documents similaires
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/fyzdcDMcCDMadvRVFCY6D1BCIIG9cUXuHdnOsXGX6P0N4j72bTWJGzdnVseZa0wyV6GHLOVjDs7UqTv6lpI1vQra.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/5JxKzqzWdNc02mHm5RK1XH7phURujnpII95XrqLqU1d74QtxOtLWfpkvObcf48HUSRAfhadM3l6NOyluRGHLIYAg.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/GWf386yWGpX1zKECxAGxTht9GEI3zVJ29Y9tilcL2oOQ54LA8erUNCyb5nL67K3T2Pkxlq1wV8pe43C2LvaiPljn.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/ZCjLmgVdqeEyGfQe7lvfbPxgDOL131mzz7nwMM8OI7Gv7TW7bN6VVbwlc1dyEXOPFUaQKTB3WHZdY4aJa7A9nd9s.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/QfvdpwqORwye5qD6hEX67kZSiPEjzOAGMwv5CFcxkH92liyDmJslBOp9OWcMvdonJ9SjfKlqhcrXOcI4pPv7mC28.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/3nYzUifdJDbVAd39NHUnp03lWFzeLWEVfX4MNcRXP9Bs0H3zi35ZeFZ4dkf1YxhhGGClZCqbjQpHb7rqX7moS5H5.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/FAu4oH360zBmCFcFwNk0CNF8TuOJ4X4HoxN8BOvBXn3qUdy1I5UpdtqoKWN7uRtgczBwXUggfPMvRPlKSP8YFpeT.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/I82emtAwxUkCQtkqsS2aPyUf5er7pnZY59Gm0JJ7ig4nDj1Tk0qlG6tc5CmhAdUWW7ybrJdYo2ys6kni6Yd0xX3h.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/uskAJs71tWzyzNDGzu1SDT2VEQeNlh9t9Ny2q4ZLR63bZTvHQhWyhVZ59dI28k4uzOHf3M3Zda10VFAOjiPrZEzQ.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/ejC0IO10A3TcDJ40GHOpJyXcENLWb7AKRGqiaqlraPKFqeogDCdbN2EicdoyZGMs2EN0Se9LIBLcfki7xSB5TqYy.png)
-
27
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Dec 12, 2022
- Catégorie Creative Arts / Ar...
- Langue French
- Taille du fichier 8.6118MB