Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
Publié parPierre-Yves Gauthier Modifié depuis plus de 9 années
1
4 Développement de site Web dynamique avec PHP Formation continue – Cégep de Sainte-Foy François G. Couillard
2
5 Table des matières Faire connaissance Introduction Évaluation des connaissances de départ PHP les bases Outils de développement
3
6 Table des matières (suite) Récupération et stockage des données dans des fichiers Utilisation des tableaux Manipulation de chaînes Réutilisation de code et écritures de fonctions Expressions régulières
4
7 Faire connaissance Vos connaissances HTML Pages web dynamiques Architecture client-serveur Langages Votre but à la fin du cours
5
8 Faire connaissance Présentation du professeur francoisgosselincouillard@hotmail.com Expérience Mon objectif face au cours
6
9 Introduction Définition Caractéristiques L’histoire du PHP Fonctionnement Les outils de développement Architecture client-serveur
7
10 Définition PHP (Hypertext Preprocessor) est un langage de scripts libre principalement utilisé pour produire des pages Web dynamiques via un serveur Web. http://fr.wikipedia.org/wiki/PHP:_Hypertext_Preprocessor
8
11 Caractéristiques de PHP Accès à une base de données Envoi de courriel Lecture du contenu de fichiers Compression de données Génération d’images ou de PDF Validation d’un paiement en ligne Gestion de formulaires
9
12 Caractéristiques On parle de script PHP puisque c’est un langage interprété et non compilé. Le responsable de l’exécution est l’interpréteur. Il fait la lecture des lignes du script une à la fois et exécute le résultat. De l’autre côté, les langage compilés (C, C++ et VB) utilisent un compilateur afin de transformer le code en langage machine. http://fr.wikipedia.org/wiki/Interpr%C3%A8te_(informatique)
10
13 Avantages Gratuit, libre et peu consommateur de ressources Programmation objet et procédurale Fondements du langage simples à acquérir Interaction avec un grand nombre de BD Plusieurs éditeurs de code gratuits Multi-plateforme : Linux, Windows, MacOSX Largement utilisé
11
14 Inconvénients Manque la gestion des processus (thread) POO pas encore très évoluée Aucun environnement de développement majeur sur le marché
12
Statistiques http://w3techs.com/technologies/detail s/pl-php/all/all http://w3techs.com/technologies/detail s/pl-php/all/all http://trends.builtwith.com/framework/P HP http://trends.builtwith.com/framework/P HP 15
13
16 L’histoire de PHP
14
17 L’histoire Conçu en 1994 par Ramsus Lerforf. Il cherchait un moyen de comptabiliser les internautes qui visitaient son CV sur son site Internet. Il a cherché un langage qui aurait permis de traiter facilement des formulaires. Il n’a pas trouvé. Il a donc décidé de développer son propre langage.
15
18 L’histoire Le langage PHP/FI (Personal Homepage Tools/Form Interpreter) a donc vu le jour. Un peu plus tard, le langage a été rebaptisé par PHP Hypertext Preprocessor. En 1997, deux israéliens (Zeev Suraski et Andi Gutmans) veulent développer un site de commerce électronique. Ils se joignent à Rasmus afin de l’aider dans son projet.
16
19 L’histoire Un engouement immédiat pour ce langage se fait sentir. La compagnie Zend (Zeev & Andi) est fondée et le langage est réécrit. Depuis, deux réécritures ont eu lieu : 2000 PHP 4 2004 PHP 5
17
20 L’histoire La version PHP 5 apporte de nouveaux éléments : Programmation OO (orienté objet) améliorée Un support pour le XML et le XSLT La gestion des services Web L’accès aux BD via l’extension PDO
18
21 L’histoire PHP aujourd’hui Utilisé sur des dizaines de millions de sites Marché de plus de 10 milliards de $ Yahoo utilise ce langage et a engagé Ramsus
19
22 L’évolution http://fr2.php.net/usage.php 20 917 850 domaines, 1 224 183 adresses IP
20
23 Fonctionnement
21
24 Fonctionnement Architecture client- serveur Le client fait l’envoi d’une demande au serveur. Le serveur traite cette demande et renvoie la réponse au client. http://www.dbco.ch/pub/img/ClientServeur.jpg
22
25 Fonctionnement http://upload.wikimedia.org/wikipedia/commons/4/40/PHP.svg
23
26 Fonctionnement 1. Un client demande l’affichage d’une page web PHP. 2. Le serveur Web charge le fichier à partir du disque dur. 3. Le fichier est envoyé à l’interpréteur PHP. 4. L’interpréteur génère le code HTML et effectue un traitement. 5. Le code produit est retourné au serveur Web. 6. La réponse est retournée au client.
24
27 Fonctionnement * Si le nom du fichier n’est pas spécifié, le fichier index.php est retourné. index.php
25
28 Les outils
26
29 Outils L’interpréteur PHP Un serveur Web Un éditeur de code Un fureteur Un SGBDR (Système de gestion de base de données relationnelles) Package WAMP ou LAMP
27
30 L’interpréteur L’interpréteur PHP peut être téléchargé sur le site php.net. Il est disponible pour une multitude de systèmes d’exploitation.php.net Pour une installation facile sur Windows, téléchargez l’installeur. php.net/downloads.php php.net/downloads.php
28
31 Un serveur Web Plusieurs serveurs Web peuvent fonctionner avec l’interpréteur PHP. Apache Serveur web gratuit http://httpd.apache.org/download.cgi IIS (Internet Information Server de Microsoft) Disponible avec Windows XP Pro
29
32 Un SGBDR La base de données la plus populaire pour fonctionner avec PHP est bien entendu MySQL. Gratuit et licence GPL. Version « community server » http://dev.mysql.com/downloads/mysql/5.1.html http://dev.mysql.com/downloads/mysql/5.1.html
30
33 Un éditeur Il est possible de créer des pages avec Notepad. Des environnement plus élaborés sont disponibles. Notepad++ Éditeur de texte gratuit accompagné d’une mise en évidence du code PHP (Syntax highlight) http://notepad-plus-plus.org/ http://notepad-plus-plus.org/
31
34 Un éditeur Eclipse PDT eclipse.org/pdt eclipse.org/pdt NetBeans netbeans.org/downloads netbeans.org/downloads Zend Studio Environnement de développement payant. zend.com/fr/products/zend_studio zend.com/fr/products/zend_studio
32
35 Un éditeur plusieurs autres éditeurs. php-editors.com/review/ php-editors.com/review/
33
36 Un fureteur Chrome Firefox Internet Explorer Opera 2013Internet Explorer FirefoxChromeSafariOpera Février13.5 %29.6 %50.0 %4.1 %1.8 %
34
37 Tester le résultat Voici un site qui vous permettra de vérifier l’apparence d’un autre site sans avoir à installer plusieurs fureteurs. browsershots.org
35
38 Fureteur proposé Un développeur Web doit avoir plusieurs fureteurs sous la main afin de tester le résultat généré. http://www.w3schools.com/browsers/browsers_stats.asp
36
39 WAMP & LAMP Un ensemble de logiciels faciles à installer. Pour Windows et Linux. WAMP : Windows Apache MySQL PHP LAMP : Linux Apache MySQL PHP easyPHP.org easyPHP.org wampserver.com wampserver.com apachefriends.org/fr/xampp.html apachefriends.org/fr/xampp.html
37
40 Exercice Installez XAMPP Arrêtez le serveur IIS iisreset /stop Démarrez le nouveau serveur Vérifiez le fonctionnement à l’adresse http://localhost http://localhost
38
41 Les bases Démarrer l’environnement Répertoire Root Les fichiers.php Les balises PHP Les variables
39
42 Démarrer l’environnement Lancer le serveur Web Ouvrir la page http://localhost/ dans un fureteurhttp://localhost/ Si IIS (serveur web) occupe déjà le port 80, utilisez la commande iisreset /stop
40
43 Répertoire de base Le répertoire ROOT ou RACINE C’est le contenu de ce dossier qui sera affiché lorsque vous ouvrirez l’adresse : http://localhost/ http://localhost/ C’est l’adresse de votre serveur web Le contenu se trouve dans l’un de ces répertoires du disque dur: C:\xampplite\htdocs C:\wamp\www C:\Program Files\EasyPHP1-8\www
41
44 PHP.ini Le fichier PHP.ini contient la configuration de l’interpréteur. Vous pouvez modifier des options en fonction de vos besoins. error_reporting = E_ALL & ~E_NOTICE display_errors = true Affiche toutes les erreurs sauf les notices.
42
45 PHP.ini - ini_set Il est possible de modifier les configurations de ce fichier lors de l’exécution avec la fonction ini_set : ini_set("display_errors", true); ini_set("file_uploads", "On"); ini_set("upload_max_filesize", "32M");
43
46 Les fichiers.php Un fichier.php est un fichier texte qui peut contenir un mélange de HTML, CSS, JavaScript et d’instructions PHP. Vos fichiers doivent avoir l’extension php (exemple.php) pour être interprétés par PHP.
44
47 Les balises PHP <?php Afin que vos instructions PHP soient interprétées, vous devez les délimiter avec ces balises. ?>
45
48 Votre premier programme <?php echo "Bonjour PHP"; ?> Enregistrez ce code dans le fichier index.php dans le répertoire root de votre serveur web. Afin de vérifier que cette instruction est fonctionnelle, ouvrez la page Web qui contient ce code avec un fureteur, adresse http://localhost.
46
49 PHPinfo() À la suite de votre instruction, ajoutez l’appel de la fonction suivante : phpinfo(); La configuration de votre système sera affichée à l’écran.
47
50 Votre premier programme (suite) <?php echo "PHP 5 "; echo "Super!"; ?> Une balise HTML est utilisée a travers le PHP.
48
51 Mélanger HTML et PHP Afin de générer du HTML, vous pouvez toujours utiliser la fonction echo ou print. Il est parfois plus facile d’ouvrir et de refermer plusieurs fois les balises PHP.
49
52 Mélanger HTML et PHP Paragraphe HTML 1 Paragraphe HTML 2
50
53 Caractéristiques du code Toujours délimité par les balises PHP. Les instructions se terminent par un point-virgule. Il est conseillé de documenter le code en ajoutant des commentaires. Les commentaires seront ignorés par l’interpréteur.
51
54 Commentaires PHP /* Sur plusieurs lignes */ // Sur une seule ligne # Autre commentaire
52
55 Commentaires HTML Il existe aussi des commentaires HTML. Ces commentaires seront visibles dans le code source, mais n’auront pas d’impact dans votre fureteur.
53
56 Mélanger HTML et PHP avec commentaires <? // Affiche le texte PHP avant HTML PHP echo "PHP avant HTML"; ?> Paragraphe HTML 1 Paragraphe HTML 2
54
57 Structure HTML de base Titre de la page Titre Principal Titre secondaire Paragraphe
55
58 Aide Ou utilisez l’aide en ligne http://php.net/manual/fr/index.php http://php.net/manual/fr/index.php Téléchargez l’aide.CHM http://www.php.net/download-docs.php http://www.php.net/download-docs.php
56
59 Exercice Créez un fichier PHP nommé index.php dans votre répertoire www (si ce n’est pas déjà fait). Utilisez la fonction echo pour afficher une phrase et date pour afficher la date. Visualisez le résultat dans votre fureteur. Profitez-en pour regarder le code source Menu Affichage Source Il est souhaitable d’ajouter les balises HTML, HEAD et BODY.
57
60 Les variables Y
58
61 Les variable$ Une variable est un espace de stockage pour une donnée. Toutes les variables commencent avec le caractère $ Exemple : $nom
59
62 Nom d’une variable Choisissez un nom significatif PHP est sensible à la casse (case-sensitive) $a et $A sont deux variables différentes Certains caractères spéciaux ne peuvent pas être utilisés dans le nom d’une variable. Doit commencer par une lettre ou un souligné (_), suivi de lettres, chiffres ou soulignés.
60
63 Affectation = L’affection est l’acte d’attribuer une valeur à une variable. $test Test est le nom de la variable Cette variable pourrait contenir la valeur « Océane » par exemple. $test = "Océane";
61
64 Affectation = Différents types Directe: $test = "Océane"; Suite à une opération: $test = 3 + 4; Résultat d’une fonction: $test = pow(2,4);
62
65 Affectation $nb++; Incrémentation Même résultat que $nb = $nb + 1 $nb--; Décrémentation Même résultat que $nb = $nb - 1
63
66 Les constantes Il est possible de définir des constantes. Ces sont des variables qui ne changeront pas de contenu, d’où le nom de constante. define("VITESSE_LUMIERE", 299792458 );
64
67 Les constantes Plusieurs constantes sont déjà définies par PHP. Afin d’en avoir la liste, exécutez les instructions suivantes : echo " "; print_r(get_defined_constants()); echo " ";
65
68 Exercice Déclarez une variable, affectez-lui une valeur et afficher cette valeur à l’aide de echo. Déclarez une constante NOM_SITE qui contiendra le nom de votre site Web. Affichez cette constante en haut de votre page à l’aide de la balise HTML.
66
69 Les types de variables Booléen Entier Virgule flottante Chaînes de caractère
67
70 Définition Chaque variable a un type spécifique Il identifie comment la donnée sera interprétée et la quantité d’espace mémoire requise pour entreposer l’information. Il est assigné automatiquement selon la valeur qui est attribuée.
68
71 Types de base BooléenBool0,1 True ou false EntierInteger0,1,-5, 100 Virgule flottante Double0.1, 5.5, 100.2 Chaîne de caractères String"PHP" "Ramsus"
69
72 Types supplémentaires Types composés : Tableaux Objets Orienté objet Types spéciaux Ressources fichier, bd, connexion FTP Null
70
73 Entier Les entiers peuvent être spécifiés en base décimale (base 10), en hexadécimale (base 16) ou octale (base 8). $a = 1234; // entier en base 10 $a = -123; // entier négatif $a = 0123; // entier en base 8, octale $a = 0x1A; // entier en base 16, hexadécimale
71
74 Virgule flottante Les nombres décimaux (connus aussi sous le nom de "double", "float" ou "nombre réels") peuvent être spécifiés en utilisant la syntaxe suivante : $a = 1.234; $b = 1.2e3; $c = 7E-10;
72
75 Opérateurs arithmétique $resultat = 1 / 2 * 8 – (2 + 0) % 3; Opérateurs : + - * / % % modulo : retourne le reste d’une division Priorité des opérations à considérer Utilisation de parenthèses possibles Raccourcis : -=, *=, /= %=
73
76 Chaînes de caractères Les chaînes de caractères sont des séquences de caractères. Un caractère est entreposé dans un octet et il y a 256 caractères possibles. Il n'a pas de support natif Unicode. Voir les fonctions utf8_encode() et utf8_decode() pour un support Unicode.
74
77 Chaînes de caractères Afin de délimiter une chaîne, les guillemets doubles sont habituellement utilisés. $chaine = "Voici ma chaîne"; Cas spéciaux : echo 'Ceci est une chaîne simple'; echo 'Il a dit : "I\'ll be back" '; echo "Il a dit : \"I'll be back\" "; http://ca.php.net/manual/fr/language.types.string.php
75
78 Caractères spéciaux SéquenceValeur \n Nouvelle ligne (linefeed, LF ou 0x0A (10) en ASCII) \r Retour à la ligne (carriage return, CR ou 0x0D (13) en ASCII) \t Tabulation horizontale (HT ou 0x09 (9) en ASCII) \\ Anti-slash \$ Caractère $ \" Guillemets doubles
76
79 Concaténation de chaînes 1. <?php 2. $nom = "M. Côté"; 3. $message = ' Merci '. $nom; 4. echo $message; 5. ?>
77
80 Traitement des chaînes strtoupper, strtolower strlen strpos, stripos, strrpos, strripos rtrim, trim, ltrim substr str_replace
78
Fonction Sous-programme, qui effectue une séquence d'instructions Possède un nom (elle peut donc être appelée) 81
79
Fonction Une fonction peut retourner une valeur Ex: $nom = getNom(); Une fonction peut recevoir des paramètres Ex: print ($chaine); Ou print (“Hello world”); Ou pow (2,4) 82
80
83 Traitement des chaînes strtoupper Retourne une chaîne en majuscules strtolower Retourne une chaîne en minuscules strlen Retourne le nombre de caractères dans une chaîne.
81
84 Traitement des chaînes strpos, stripos, strrpos, strripos Retourne la position d’une chaîne dans une autre chaîne. strpos : à partir du début stripos : à partir du début, sans casse strrpos : à partir de la fin strripos : à partir de la fin, sans casse
82
85 Traitement des chaînes rtrim, trim, ltrim Enlève les espaces dans une chaîne. rtrim : espaces à droite ltrim : espaces à gauche trim : espaces à gauche et à droite
83
86 Traitement des chaînes substr Permet d’extraire une section d’une chaîne. $extract = substr("abcde", 1); // bcde $extract = substr("abcde", 1,3); // bcd $extract = substr("abcde", -1); // e $extract = substr("abcde", 2,-1); // cd
84
87 Traitement des chaînes str_replace Remplace une chaîne par une autre chaîne dans une chaîne. $result = str_replace("a", "b", "abc"); //Le contenu de $result sera bbc
85
88 Fonctions pour déterminer le type $var = -2.2; echo 'type : '. gettype($var). ' '; echo 'null : '. is_null($var). ' '; echo 'int : '. is_int($var). ' '; echo 'bool : '. is_bool($var). ' '; echo 'float : '. is_float($var). ' ';
86
89 Exercice Déclarez une variable de type chaîne. Expérimentez les fonctions vues. Si vous éprouvez des difficultés, allez sur le site www.php.net.www.php.net Ayez l’aide PHP sous la main! Fichier.chm
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.