Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark. Copyright © 2009 Micro Application 20-22, rue des Petits-Hôtels 75010 PARIS 1 re Edition - Mars 2009 Auteur Jean CARFANTAN Toute représentation ou reproduction, intégrale ou partielle, faite sans le consentement de MICRO APPLICATION est illicite (article L122-4 du code de la propriété intellectuelle). Cette représentation ou reproduction illicite, par quelque procédé que ce soit, constituerait une contrefaçon sanctionnée par les articles L335-2 et sui- vants du code de la propriété intellectuelle. Le code de la propriété intellectuelle n’autorise aux termes de l’article L122-5 que les reproductions strictement destinées à l’usage privé et non destinées à l’utilisation collective d’une part, et d’autre part, que les analy- ses et courtes citations dans un but d’exemple et d’illustration. Avertissement Les informations contenues dans cet ouvrage sont données à titre indicatif et aux utilisateurs n’ont aucun caractère exhaustif voire certain. A titre d’exemple non limitatif, cet ouvrage peut vous proposer une ou plusieurs adresses de sites Web qui ne seront plus d’actualité ou dont le contenu aura changé au moment où vous en prendrez connaissance. Aussi, ces informations ne sauraient engager la responsabilité de l’Editeur. La société MICRO APPLICATION ne pourra être tenue responsable de toute omis- sion, erreur ou lacune qui aurait pu se glisser dans ce produit ainsi que des conséquences, quelles qu’elles soient, qui résulteraient des informations et indications fournies ainsi que de leur utilisation. Tous les produits cités dans cet ouvrage sont protégés, et les marques dépo- sées par leurs titulaires de droits respectifs. Cet ouvrage n’est ni édité, ni pro- duit par le(s) propriétaire(s) de(s) programme(s) sur le(s)quel(s) il porte et les marques ne sont utilisées qu’à seule fin de désignation des produits en tant que noms de ces derniers. ISBN : 978-2-300-017599 Couverture réalisée par Emilie Greenberg MICRO APPLICATION Support technique 20-22, rue des Petits-Hôtels Également disponible sur 75010 PARIS www.microapp.com Tél.:0153342020 Fax:0153242000 http://www.microapp.com Retrouvez des informations sur cet ouvrage ! Rendez-vous sur le site Internet de Micro Application www.microapp.com. Dans le module de recherche, sur la page d’accueil du site, entrez la référence à 4 chiffres indiquée sur le présent livre. Vous accédez directement à sa fiche produit. 1759 Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark. Avant-propos Cette collection fournit des connaissances essentielles sur un sujet donné sans jamais s’éloigner de leur application pratique. Les volumes de la collection sont basés sur une structure identique : ¶ Les puces introduisent une énumération ou des solutions alternatives. 1 . La numération accompagne chaque étape d’une technique. Il s’agit d’informations supplémentaires relatives au sujet traité. Met l’accent sur un point important, souvent d’ordre technique, qu’il ne faut négliger à aucun prix. Propose conseils et trucs pratiques. Conventions typographiques Afin de faciliter la compréhension des techniques décrites, nous avons adopté les conventions typographiques suivantes : ¶ Gras : menu, commande, boîte de dialogue, bouton, onglet. ¶ Italique : zone de texte, liste déroulante, case à cocher, bouton radio. ¶ Police bâton : touche, instruction, listing, texte à saisir. ¶ ✂ : indique un retour ligne volontaire dû aux contraintes de la mise en page. Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark. Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark. PHP & MySQL Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark. Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark. 1 Introduction 17 1.1. Naissance de ce langage 18 1.2. Evolution du langage 18 1.3. Intérêt de ce langage 19 La liberté . 19 La portabilité 20 La facilité . 21 Un peu d’histoire . 21 1.4. Fonctionnement . . . 22 1.5. Des chiffres. . 23 2 Ma première page PHP 25 2.1. HTML 26 2.2. Le cheminement d’un apprenti webmestre . 27 2.3. Quelques notions de HTML . 28 Les images . 32 Les liens . 33 Les tableaux 35 Les formulaires 38 Les cadres ou frames . 40 2.4. Les outils 43 Les logiciels d’édition de code PHP . 43 EasyPHP 45 Autres logiciels 46 L’hébergement 47 2.5. Ma page . 48 Les commentaires 51 PHPinfo() 51 3 Les clefs du PHP . 53 3.1. Variables scalaires . 54 Le nom de variable . 54 Le type des variables . 55 Les guillemets 57 Les constantes 60 Les tableaux 63 3.2. Les opérateurs 67 Les opérateurs arithmétiques . 67 Les opérateurs d’affectation 67 Les opérateurs de bits . 68 Les opérateurs de comparaison . 68 Les opérateurs de contrôle d’erreur . 70 Les opérateurs unaires 71 Les opérateurs logiques . 72 Priorité des opérateurs 72 Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark. Les opérateurs de chaîne de caractères . 73 3.3. Les structures de contrôle 74 Les tests . 74 3.4. Les boucles . 77 La boucle while 78 La boucle do while . 79 La boucle for 80 Foreach . 82 Break et continue 84 3.5. Les fonctions de PHP . 85 Chaînes de caractères 86 Variables . 91 Date et heure . 91 Mathématiques 95 3.6. Les fonctions 97 Le rôle de la fonction 97 La portée d’une variable dans une fonction . 101 Les fonctions imbriquées . 101 Les fonctions récursives . 102 Afficher vos date et heure locales 103 3.7. Récapitulatif pour votre application . . . 105 4 MySQL en action . 107 4.1. Le fichier face à la base de données 108 4.2. Conception de l’application du club . . 108 4.3. Création d’une table . 109 4.4. Modification d’une table 113 4.5. Les clés étrangères 114 4.6. Les jointures de tables 115 4.7. Les types de données MySQL . 116 4.8. La sauvegarde de la base . 118 4.9. Les formulaires . . 119 L’inscription au club . 119 4.10. Les fonctions du langage PHP pour MySQL 133 4.11. La vérification des formulaires 133 La vérification avec Javascript . 134 Le code PHP 141 Variables prédéfinies liées au chemin ou à l’URL 145 4.12. Tout sur un seul fichier : oubli.php . 146 La réflexion . 146 La plate-forme commune 147 Les variables comme marqueurs . 147 4.13. Récapitulation de la syntaxe des requêtes 151 4.14. Les procédures stockées . 156 4.15. SQLite . 156 Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark. 5 Le PHP et l’approche objet . 159 5.1. Qu’est-ce que l’objet ? 161 5.2. L’héritage 163 5.3. Surcharger une méthode . . 165 5.4. Le polymorphisme . . 166 5.5. Passer un argument par référence 167 5.6. PHP 5 et l’objet 168 Le pointeur . 168 Les privilèges . 168 Le constructeur et le destructeur . 168 6 L’internaute est d’abord une personne . 171 6.1. L’authentification 172 Le processus . 175 La première authentification 176 La vérification de l’identité de l’internaute 178 Le cookie 179 La conservation des données personnelles . 183 6.2. Le tableau de bord du membre 184 Modifier ou supprimer un profil 185 6.3. Le tableau de bord d’administration du site . 190 L’accès restreint d’un répertoire avec .htaccess . 191 Le tableau de bord . 192 6.4. Des aménagements dans l’application . . . 198 6.5. En-têtes HTTP et variables globales 201 En-têtes HTTP 201 Variables PHP . 204 Variable d’environnement 205 6.6. Récapitulation . . . 207 7 Des algorithmes, des outils et des fonctions . 209 7.1. Tableaux . 210 Types d’extraction 212 Le pointeur . 213 Letri 213 7.2. Calendriers, dates et autres agendas . . . 218 Durée après une date ou avant une date . 218 Affichage d’un calendrier . 219 Un agenda à jour . 223 7.3. Un miniforum sur chaque page 236 7.4. Sondages et concours . . 239 Un sondage 240 Un concours 247 Les fonctions concernant le système de fichiers . 249 7.5. Compteurs et statistiques . . . 254 Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark. La réflexion . 254 Créer le compteur quotidien 254 La page d’affichage des statistiques de page . 256 7.6. Le chariot électronique 258 La promotion 259 Les prix 260 Les tables à créer 261 L’action "acheter un produit" 261 L’action "voir le contenu du chariot" . 262 L’action "commander les articles" 263 7.7. Un magazine 265 La réflexion . 266 Le formulaire pour entrer les images 267 7.8. Une galerie photo . 270 Les données EXIF 272 8 Moteurs de recherche et expressions rationnelles . 275 8.1. Un annuaire de liens . 276 Analyse du besoin 276 Réflexions 277 Élaboration des applications 279 Moteur de recherche 295 8.2. Les expressions rationnelles 301 La méthode . 301 POSIX . 302 Les fonctions compatibles Perl 307 8.3. Conclusion 319 9 Parsez-vous XML ? . 321 9.1. Un peu d’histoire . . . 322 9.2. Le fichier XML . 323 L’espace de nommage 323 Les éléments et les attributs 323 9.3. La DTD 326 Les différents types de déclarations 326 9.4. Le XSLT 328 L’espace de nommage 328 La feuille de style 329 Les modèles 330 9.5. Le fichier PHP . 332 9.6. Magasin électronique en XML . 332 La conception de la boutique 333 Création du fichier XML 333 Création d’un nouveau fichier CSV à partir d’un fichier XSLT 335 Le fichier XSLT de la boutique . 336 Le fichier PHP de la boutique . 339 Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark. [...]... prot de cet ouvrage en vous amusant Si vous avez lintention de crộer un site Internet mais que vous vous sentiez dộmuni, incapable, dộpassộ, PHP & MySQL en ligne constitue le dộbut idộal de votre aventure Les pages qui vont suivre sont issues de ma pratique quotidienne danalyste-programmeur et de webmestre Jai veillộ parsemer ce livre dastuces et dexemples complets avec des explications claires et une... dộcouvert lInternet cette ộpoque, il existait peu de sites en franỗais Jai dailleurs rộalisộ mon premier site en anglais Aprốs avoir enrichi ce site et arpentộ longtemps lInternet, jai voulu aller plus loin Cest l que jai dộcouvert le langage Perl, sous la forme dun script capable de traiter des donnộes de formulaire envoyộes par e-mail Par simple curiositộ, jai achetộ un livre, puis deux et jai ộtộ happộ... objet demande un raisonnement plus ộlaborộ Plusieurs raisons peuvent pousser changer de version : ả Une plateforme ou framework passe cette version et nous intộresse ; ả Par dộ et goỷt dapprendre de nouvelles syntaxes ou cadres de travail Reportez-vous au chapitre intitulộ Les frameworks ou cadriciels PHP pour obtenir plus de dộtails sur le sujet 1.3 Intộrờt de ce langage PHP est libre, portable et. .. PHP et dune base de donnộes MySQL Il lit quainsi, les visiteurs peuvent participer la vie du site en donnant des informations Ces informations sont classộes et stockộes dans la base de donnộes puis affichộes grõce au langage PHP Il pourrait crộer le club des Bons Vivants, parce quil aime manger, boire et faire la fờte Il pourrait ainsi organiser des repas, se faire de nouveaux amis et ộchanger recettes... temps complet pour le Web et expộrimentộ les bonnes (et mauvaises) mộthodes de programmation Pour restituer un savoir, il est nộcessaire de lexpộrimenter, cest pourquoi jai empruntộ pour vous des chemins que je navais jamais foulộs auparavant De ce fait, ce livre est utile pour des programmeurs chevronnộs Au long de cet ouvrage, jai eu cur de rester accessible tous Quels que soient votre õge et vos connaissances,... derriốre vous 14 Double Poche PHP & MySQL Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark Introduction Je dộdie ce livre mon pốre, Maurice, qui a toujours encouragộ mon goỷt dapprendre, et mon lleul cambodgien, Touch Ra, qui un jour, je lespốre, pourra lire cet ouvrage et samuser avec du code informatique, sil le souhaite Double Poche PHP & MySQL 15 Please purchase PDF Split-Merge... progressive Pour cette deuxiốme ộdition, nous abordons PHP 5, qui entame une vraie rộvolution dans la maniốre dapprộhender le code et la grammaire PHP 5 garde cependant une compatibilitộ ascendante qui garde opộrationnelles des fonctions obsolốtes Les points saillants de cette rộvolution sont le renforcement de la programmation objet, larrivộe dune nouvelle base de donnộes SQLite et un vrai espace... quelconque retour Il imagine alors la GPL (General Public License) Cette licence accorde lutilisateur le droit de diffusion, dutilisation et de modication Une clause supplộmentaire donne lobligation dutiliser la mờme licence, que le logiciel soit modiộ ou non En 1991, le Finlandais Linus Thorvalds invente Linux, un systốme dexploitation libre et gratuit Le combat actuel contre le brevet logiciel a... grand nombre de dộveloppeurs assure une ộvolution continuelle et favorise lintộgration des derniốres ộvolutions en matiốre de langage informatique Ce langage est simple Vous commencez et obtenez immộdiatement un rộsultat Cela permet chacun dapprendre son rythme (comme vous le verrez travers ce livre) et dintộgrer la connaissance des fonctions et extensions au grộ de ses envies Un peu dhistoire Le langage... est quant lui composộ de 0 et de 1, seul langage comprộhensible par une machine C emploie une syntaxe et des mots qui sont ensuite transformộs par un compilateur en une suite de 0 et de 1, selon le code de la machine et son systốme dexploitation Il existe des compilateurs C pour Linux ou Windows Ainsi, un programme compilộ sous Windows ne peut ờtre utilisộ sous Linux, et vice versa 1.5 Des chiffres . et de webmestre. J’ai veillé à parsemer ce livre d’astuces et d’exemples complets avec des explica- tions claires et une évolution progressive. Pour cette. l’usage privé et non destinées à l’utilisation collective d’une part, et d’autre part, que les analy- ses et courtes citations dans un but d’exemple et d’illustration.