4 Développement de site Web dynamique avec PHP Formation continue – Cégep de Sainte-Foy François G. Couillard.

Slides:



Advertisements
Présentations similaires
Premier programme en C :
Advertisements

GESTION D’IMPRISSION SOUS WINDOWS & LINUX
Conception de Site Webs dynamiques Cours 6
Conception de Site Webs dynamiques Cours 5
Algorithmes et structures de données avancées Partie Conception de Sites Web dynamiques Cours 9 Patrick Reuter.
Algorithmes et structures de données avancées Partie Conception de Sites Web dynamiques Cours 8 Patrick Reuter.
Chapitre I : Systèmes d’exploitation
Création de Pages Web Dynamiques
Introduction Aux Systèmes dInformation et Multimédia T. Bourdeaudhuy S. Collart-Dutilleul P. Kubiak IG 2 I - Saison 2006/2007 (X)HTML / Pages Web Statiques.
C.
TP n°1 PHP LES BASES Premier programme Affichage
Introduction : Compilation et Traduction
Techniques Internet de Base Licence 2 (Info, Maths, PC/PA) Université Jean Monnet Ruggero G. PENSA
Systèmes d’exploitation
Principes de programmation (suite)
CPI/BTS 2 Programmation Web Introduction au PHP
Module 1 : Préparation de l'administration d'un serveur
Comprendre l’environnement Web
Les instructions PHP pour l'accès à une base de données MySql
Guide d'utilisation de Microsoft Weft Il s'agit de convertir un ou des fichiers Police de caractères (font) généralement de type.ttf en un ou des fichiers.eot.
Programmation multimédia 3
Introduction à la programmation (Java)
Introduction au langage PHP Réfs : Chap 3 p 49. Présentation PHP (Hypertext PreProcessor) est un langage de développement Web créé en 1994 par Rasmus.
1. 2 PLAN DE LA PRÉSENTATION - SECTION 1 : Code HTML - SECTION 2.1. : CSS (Méthode 1) - SECTION 2.2. : CSS (Méthode 2) - SECTION 3 : JavaScript - SECTION.
Web dynamique PhP + MySQL AYARI Mejdi 2006
PhP-MySQL Pagora 2012/2013 CTD 1 - Presentation de moi ^^
Module 8 : Maintenance des logiciels à l'aide des services SUS
L3 Module Libre Année universitaire Initiation à la Bioinformatique Jean-Michel RICHER.
Types de données fondamentaux
Animateur : Med HAIJOUBI
PHP 1° PARTIE : LES BASES © BTS IRIS 2002 [tv] Présentation Historique
PHP & My SQL.
Département Technologie de l’Information et de la Communication
JavaScript Nécessaire Web.
PHP 5° PARTIE : LES COOKIES
JavaScript.
0 Objectifs de la session n°1  Revenir sur toutes les bases théoriques nécessaires pour devenir un développeur Web,  Découvrir l’ensemble des langages.
Un survol du language C.
PHP & MySQL Master1 ICD Claire Jacquot Emilie Hot le 24/10/2006.
Programmation Web : Introduction à XML
Technologies web et web sémantique TP3 - XML. XML eXtensible Markup Language (langage extensible de balisage) – Caractéristiques: méta-langage = un langage.
 Syntaxe du langage PHP
 Requêtes MySQL en PHP Introduction
420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1.
S'initier au HTML et aux feuilles de style CSS Cours 5.
PHP 6° PARTIE : LES SESSIONS 1.Introduction 2.Identificateur de session 3.Variables de session 4.Client / Serveur 5.Principe 6.Ouverture de session 7.Enregistrement.
Module : Pages Web Dynamiques (Production Électronique Avancée)
S'initier au HTML et aux feuilles de style CSS Cours 5.
 Formulaires HTML : traiter les entrées utilisateur
1 PHP 5 Notions fondamentales (niveau 1 – cours #2) Formation continue – Cégep de Sainte-Foy.
Mettre en formeExaminerManipuler Les fonctions printf() et sprintf Le traitement de chaîne de caractère La fonction printf() formate le contenu d'une chaîne.
Initiation au JavaScript
Initiation au web dynamique Licence Professionnelle.

Module 133 Développer des applications Web Introduction à PHP.
8PRO107 Éléments de programmation Les adresses et les pointeurs.
HTML Création et mise en page de formulaire
1 PHP 5 Notions fondamentales (niveau 1 cours #3) Formation continue – Cégep de Sainte-Foy François G Couillard.
Philippe Gandy - 1 septembre 2015 Basé sur les notes de cours de Daniel Morin et Roch Leclerc.
Chapitre 9 Les caractères.
Philippe Gandy - 8 septembre 2015 Basé sur les notes de cours de Daniel Morin et Roch Leclerc.
Principes et variables
Bloc 1 - UE 5 - Technologies de l’information et de la communication TIC Bachelier en immobilier T. SOUMAGNE.
Introduction au langage C
Les calques Les Template (modèles) Les Comportements Les scénarios Les formulaires Les CSS Le serveur Web de l’UTC Présentation.
FACTORY systemes Module 5 Section 1 Page 5-3 Les scripts de traitement FORMATION INTOUCH 7.0.
Abes agence bibliographique de l’enseignement supérieur Les scripts.
FACTORY systemes Module 2 Section 1 Page 2-3 Installation d’Industrial SQL FORMATION InSQL 7.0.
APP-TSWD Apprentissage Par Problèmes Techniques des Sites Web Dynamiques Licence Professionnelle FNEPI Valérie Bellynck, Benjamin Brichet-Billet, Mazen.
Transcription de la présentation:

4 Développement de site Web dynamique avec PHP Formation continue – Cégep de Sainte-Foy François G. Couillard

5 Table des matières Faire connaissance Introduction Évaluation des connaissances de départ PHP les bases Outils de développement

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

7 Faire connaissance Vos connaissances  HTML  Pages web dynamiques  Architecture client-serveur  Langages Votre but à la fin du cours

8 Faire connaissance Présentation du professeur  Expérience Mon objectif face au cours

9 Introduction Définition Caractéristiques L’histoire du PHP Fonctionnement Les outils de développement Architecture client-serveur

10 Définition PHP (Hypertext Preprocessor) est un langage de scripts libre principalement utilisé pour produire des pages Web dynamiques via un serveur Web.

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

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.

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é

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é

Statistiques s/pl-php/all/all s/pl-php/all/all HP HP 15

16 L’histoire de PHP

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.

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.

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

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

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

22 L’évolution domaines, adresses IP

23 Fonctionnement

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.

25 Fonctionnement

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.

27 Fonctionnement * Si le nom du fichier n’est pas spécifié, le fichier index.php est retourné. index.php

28 Les outils

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

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

31 Un serveur Web Plusieurs serveurs Web peuvent fonctionner avec l’interpréteur PHP.  Apache Serveur web gratuit  IIS (Internet Information Server de Microsoft) Disponible avec Windows XP Pro

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 » 

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) 

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

35 Un éditeur plusieurs autres éditeurs.  php-editors.com/review/ php-editors.com/review/

36 Un fureteur Chrome Firefox Internet Explorer Opera 2013Internet Explorer FirefoxChromeSafariOpera Février13.5 %29.6 %50.0 %4.1 %1.8 %

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

38 Fureteur proposé Un développeur Web doit avoir plusieurs fureteurs sous la main afin de tester le résultat généré.

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

40 Exercice Installez XAMPP Arrêtez le serveur IIS  iisreset /stop Démarrez le nouveau serveur Vérifiez le fonctionnement à l’adresse 

41 Les bases Démarrer l’environnement Répertoire Root Les fichiers.php Les balises PHP Les variables

42 Démarrer l’environnement Lancer le serveur Web Ouvrir la page dans un fureteurhttp://localhost/ Si IIS (serveur web) occupe déjà le port 80, utilisez la commande  iisreset /stop

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 :  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

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.

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");

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.

47 Les balises PHP <?php  Afin que vos instructions PHP soient interprétées, vous devez les délimiter avec ces balises. ?>

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

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.

50 Votre premier programme (suite) <?php echo "PHP 5 "; echo "Super!"; ?> Une balise HTML est utilisée a travers le PHP.

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.

52 Mélanger HTML et PHP Paragraphe HTML 1 Paragraphe HTML 2

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.

54 Commentaires PHP /* Sur plusieurs lignes */ // Sur une seule ligne # Autre commentaire

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.

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

57 Structure HTML de base Titre de la page Titre Principal Titre secondaire Paragraphe

58 Aide Ou utilisez l’aide en ligne Téléchargez l’aide.CHM 

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.

60 Les variables Y

61 Les variable$ Une variable est un espace de stockage pour une donnée. Toutes les variables commencent avec le caractère $  Exemple : $nom

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.

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";

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);

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

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", );

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 " ";

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.

69 Les types de variables Booléen Entier Virgule flottante Chaînes de caractère

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.

71 Types de base BooléenBool0,1 True ou false EntierInteger0,1,-5, 100 Virgule flottante Double0.1, 5.5, Chaîne de caractères String"PHP" "Ramsus"

72 Types supplémentaires Types composés :  Tableaux  Objets Orienté objet Types spéciaux  Ressources fichier, bd, connexion FTP  Null

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

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;

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 : -=, *=, /= %=

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.

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\" ";

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

79 Concaténation de chaînes 1. <?php 2. $nom = "M. Côté"; 3. $message = ' Merci '. $nom; 4. echo $message; 5. ?>

80 Traitement des chaînes strtoupper, strtolower strlen strpos, stripos, strrpos, strripos rtrim, trim, ltrim substr str_replace

Fonction Sous-programme, qui effectue une séquence d'instructions Possède un nom (elle peut donc être appelée) 81

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

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.

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

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

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

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

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). ' ';

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 Ayez l’aide PHP sous la main!  Fichier.chm