La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Cours : Programmation Web

Présentations similaires


Présentation au sujet: "Cours : Programmation Web"— Transcription de la présentation:

1 Cours : Programmation Web
Mlle Rahma DHAOUADI 3ème année IAG Institut Supérieur de Gestion

2 Les pré-requis Langage HTML
Les notions de base de la programmation objet Architecture client serveur Base de données les motivations peut être juste les avantages au début

3 Objectifs du cours 1- Suivre l’historique et l’évolution de la programmation orientée web 2- Initiation aux langages web de base 3- Comprendre le fonctionnement interne des pages web 4- Se préparer au projet de fin de semestre

4 Références www.phpfacile.com www.Developpez.com
ENPC - Module SYSIN - Option XML /04 - B. Amann Initiatin à AJAX (Réseau CERTA ) Denis Cabasson – Programmation Web

5 PLAN du cours Historique du web Les langages du web : PHP
Les langages du web : XML Les langages du web : JAVA SCRIPT Les langages du web : AJAX

6 Un peu d’historique Les langages du web
3 Web 2.0 (2004): participation, échange de contenu 2 Web 1.5 pages dynamiques 1 Web 1.0 pages statiques

7 Avantages - Caractéristiques
Langage interprété Nombreuses bibliothèques Communauté 1er ordre Langage non déclaratif PHP : PHP Hypertext Preprocessor PHP : acronyme historique Personal Home Page Gestion pratique, efficace Langage non typé SD et objets Syntaxe inspirée du Shell

8 Principe du fonctionnement
MySQL PHP Apache Internet Une fois une page HTML ou PHP appelée, elle passe par le serveur Web (ici Apache). Si l'extension du fichier correspond à ce que l'on a défini comme étant l'extension PHP le serveur demande à l'interpréteur PHP d'exécuter le code PHP contenu dans le fichier. L'exécution de ce code PHP entrainera éventuellement un échange d'informations avec la base de données. Au final, c'est une page HTML (généralement) qui est renvoyé à Apache (avec éventuellement du Javascript, des appels à des applets... enfin tout ce que les navigateurs peuvent comprendre). Le résultat est émis vers le navigateur.

9 Les bases du langage PHP
Bloc de code <?php ?> commentaires // commentaires ligne /* commentaires bloc */ # commentaires de type Les blocs { }

10 Les variables Modèle unifié de variable : $ + un nom $var = 1;
$var = 3.2E+4; $var = "du texte"; $var = array(); $var = new Object();

11 Bibliothèque Vérifier l’affectation d’une variable : isset
(unset : désaffecter une variable) Exemple : echo (isset($var)) ? 'initialisée' ; 'rien' ; Tester le type d’une variable : isXXXX() Exemple : isarray($var) ? Fonctions de manipulation du type : settype(string var, string type) pour typer une variable gettype pour récupérer le type . l'utilisation d'une variable non initialisée ne signale rien, la variable vaut 0 ou '' ou null suivant son utilisation.

12 Bibliothèque Date - Time
Time : retourne le nombre de secondes écoulées depuis le 1er Janvier 1970 Checkdate : contrôler la validité d'une date Strftime : afficher une date getdate : retourne la date/heure .

13 Les chaînes de caractères
$str = " KG"; echo $str; Concaténation de chaînes de caractères : $a = "Hello "; $b = $a . "KG!"; echo $b; KG HelloKG Strpos Recherche la première occurrence d'un caractère dans une chaîne Strtolower Met tous les caractères en minuscules opp. strtoupper Près de 90 fonctions de manipulation des chaînes de caractères. Explode Scinde une chaîne en morceaux, grâce à un délimiteur Ucfirst Force le premier caractère d'une chaîne en majuscule Trim Enlève les espaces de début et de fin de chaîne Substr Retourne une partie de la chaîne

14 Les tableaux Se déclare mais ne s'alloue pas $var = array();
Il existe deux types de tableaux Scalaires et Associatifs $TAB = array(); $TAB[1][0] = 4; Augmenter de dimension Un tableau à dimension multiple est TOUJOURS un tableau de tableaux $TAB = array(1,2,6,array(2,3),array(3,4,7));

15 Construction des objets
Façon opportuniste $obj->nom = ‘chocolat'; $obj->prix = 2; $obj->quantité = 10; . Instanciation Les objets peuvent être également déclarés en "classes" $variable = new NomObjet();

16 Les opérateurs & structures de contrôle
Opérateurs arithmétiques Opérateurs logiques Opérateurs de comparaison Les structures : If/else While Do/while For Foreach Switch Break/continue Include

17 Fonction utilisateur function maFonction($parm1, $parm2 , $parm3=0) {
… code de la fonction … } function maFonction(…) $valretour = …; return $valretour; Appel fonction $var=nomfonction(); Une fonction est définie par son nom et ses paramètres :

18 Passage de paramètres

19 Passage de paramètres Article.jsp?idArticle=cookies-aux-pepites-de-chocolat&idAgg=femmes_cuisine Ajouter dans l'URL, après le nom du script, une chaîne de la forme ?param1=valeur1&param2=valeur2&...

20 Interaction avec l’utilisateur : formulaire

21 Récupérer les valeurs des champs d’un formulaire
Méthode GET = Méthode POST = Tableau Associatif Valeur1 Valeur2 Valeur3 Valeur4 Paramètre1 Paramètre2 Paramètre3 Paramètre4 $_GET[" Paramètre1"] vaut "valeur1 $_POST[" Paramètre1"] vaut "valeur1  echo "Nom: ".$_GET["nom"]  echo "Nom: ".$_POST["nom"] <form method="get" > <form method="post" >

22 Méthode GET – Méthode POST
(+) Simple (-) le serveur web refuse les valeurs les URLs bien longues (-) Les valeurs passées sont clairement visibles (mot de passe) Donc utiliser POST

23 Fichiers Lire un fichier ligne par ligne
fopen() Lire un fichier ligne par ligne Lire un fichier paquet par paquet Ecrire dans un fichier Lister les fichiers d'un répertoire et de ses sous-répertoires  feof()

24 Interaction avec une base de données
$link = mysql_connect("mysql_hote", "mysql_utilisateur", "mysql_mot_de_passe"); Connexion BD Choix BD mysql_select_db("my_database"); Exécution requête SQL $query = "SELECT * FROM my_table"; $result = mysql_query($query); Parcours résultat while ($line = mysql_fetch_assoc($result))        { foreach ($line as $col_value)         {echo "$col_value\n";}  } Fermeture résultat, connexion mysql_free_result($result); mysql_close($link);

25 Interaction avec l’utilisateur Cookies - Sessions
Permet le stockage d’informations sur le client $_COOKIE contient les valeurs des variables Problème de sécurité Stockage sur le long terme (détecter les navigateurs étant déjà venus) Variables stockées coté serveur ($_SESSION) TAF : recherche approfondie sur Cookies & Sessions, ainsi que leur implémentation.

26 Langage XML : Généralités
EXtended Markup Language Structurer et la manipuler toutes sortes de données indépendamment des plates-formes et des logiciels Devenir le standard d'échange principal entre systèmes hétérogènes Un document XML est constitué de balises qui peuvent être enrichies avec des attributs Peut être stocké, transformé, interrogé “facilement” Acronyme = = langage de balise étendu

27 Structure de document XML - Exemple
<?xml version="1.0" ?> <root> <Livre> <Titre>Yaoum men ayami zamra </Titre> <Auteur>Mohamed saleh jebri </Auteur> <CodeISPN>BOU75T</CodeISPN> <NbrePages>100 </NbrePages> <Edition>5 </Edition> </Livre> </root>

28 Gestion de l’information avec XML
Le parseur permet d'extraire les données d'un document XML ainsi que de la vérification de sa validité du document. Outils d’analyse (parsing, interrogation): SAX lire un fichier XML sous forme de flux. DOM charger un document XML sous forme d'un arbre.

29 JAVA SCRIPT 1995 : invention du JavaScript
Langage de script exécuté dans le navigateur (client) et permettant un dynamisme des pages Il est encapsulé dans la page HTML (ou dans un fichier lié) pour être exécuté sur le client

30 Les éléments de base de JS
Déclaration de variables Types des objets variable=5 var variable_reserve=5 locale à la fonction string date array math RegExp types de variables Undefined number boolean string object function Création des fonctions function addition(a,b) { var c=a+b return c } Structures de contrôle et boucles

31 Gestion de l’information avec XML
alert(“Bonjour”); reponse=confirm(“Êtes-vous sûr ?”); reponse2=prompt(“Please enter your name”,”Harry Potter”); <a href=”afficher.html” onclick=”affiche();”>test</a>

32 Avantages inconvénients JS
Rendre dynamique une page web Réagir aux actions des utilisateurs Valider les données inscrites dans un formulaire Récolter des informations sur les visiteurs du site Créer des cookies Effectuer des requêtes asynchrones (AJAX) Compatibilité entre les navigateurs Problème de sécurité Désactivation du JavaScript (~10% des navigateurs)

33 Le web 2.0 Le réseau comme plate-forme (navigateur)
Les utilisateurs possèdent et contrôlent leur information Interface riche et ergonomique, basée sur Ajax Participation collective (Wiki) Réseaux sociaux

34 Pourquoi AJAX ?? Recharger entièrement la page
Solution AJAX Seules les informations nécessaires sont rechargées Utiliser un tableau JS

35 AJAX Asynchronous JavaScript And XML
Se baser sur l’objet XMLHttpRequest L’objet permet de formuler des requêtes HTTP asynchrones Envoyer requête Récupérer résultat MAJ l’affichage de la page

36 Langage client - Langage serveur
langages interprétés côté client langages interprétés côté serveur Les applets Java Les animations flash Les ActiveX (uniquement sous IE) Css Js Ajax .NET : alternative de Microsoft à PHP et Java Java (J2EE, JSP) Python (Zope) Ruby (Ruby on Rails) Php

37 À la prochaine séance


Télécharger ppt "Cours : Programmation Web"

Présentations similaires


Annonces Google