1 le modèle client/serveur technologie web deux parties distinctes client serveur analogie...
TRANSCRIPT
1
Le modèle client/serveur
Technologie web
Deux parties distinctesClientServeur
AnalogieConsommateurFournisseur
Client Serveur
Dialogue
2
Le client
Technologie web
Se situe dans un réseauUtilise les services d’un ou plusieurs serveursDemande l’exécution d’une ou plusieurs tâches2 formes
OrdinateurProgramme
3
Le client
Technologie web
Récupère les « résultats » du serveurOffre une interface utilisateur
ConvivialeOptimale
L’utilisateur se trouve sur le client
4
Le client : web (navigateur , browser) IE7 , FireFox
Technologie web
5
Le Serveur
Technologie web
Se trouve sur le réseauDeux formes
OrdinateurProgramme
Met des services à disposition du clientChargé d’accomplir des tâches
6
Le Serveur
Technologie web
7
Le Serveur
Technologie web
8
Le Serveur
Technologie web
RôleRépond aux sollicitations des clientsExécute les tâches demandées
Peut traiter plusieurs requêtes simultanément
9
Communication client/serveur
Technologie web
Dialogue entre processus 2 à 2Résultat : échange de donnéesClient initie l’échangeServeur écoute en permanence une requête éventuelle
10
Architecture Client/Serveur
Technologie web
Client ServeurDialogue
AttendRéalise/ Exécute
Demande
EnvoieReçoit
11
Architecture Client/Serveur
Technologie web
AvantagesClients voient uniquement le serveurRessources centraliséesSécuritéAdministrationRéseau évolutif
InconvénientsCoût élevéUn maillon faible
12
Quelques modèles client/serveur
Technologie web
Serveur de fichiersCentralisation des informations (facilité de sauvegarde)Salles informatiques ESTO
Serveur de tempsTemps universelToutes les machines se synchronisent sur l’heure de cette machine
Serveur FTP, Web …
13
L’architecture 3-tiers
Technologie web
Modèle classique : architecture à 2 niveaux : client et serveurModèle à 3 niveaux : 3 tiers
Le client : le demandeur de ressourcesLe serveur d’application : fournit la ressource
Fait appel à un autre serveurLe serveur secondaire
Fournit un service au serveur d’application
14
Les serveurs Web
Technologie web
1 serveurStocke des pages webAttend en permanence les demandes de clientsClient
Demande de page webAdresse tapée dans le navigateur= Requête / demande de service
15
Les serveurs Web
Technologie web
ServeurReçoit requêteTraitement : recherche du code de la page webEnvoie la page web
ClientReçoit le codeInterprète et affiche le résultat
Nature du code reçu ?
16
Pages statiques / dynamiques
Technologie web
Pages statiquesCode HTML stocké sur serveurCode envoyé au clientPage identique quelque soit
Le clientLe moment
Exemple : Page d’accueil du site d’une entreprise
17
Pages statiques / dynamiques
Technologie web
Pages dynamiques (Java Script Vb Script)Souhaite différencier l’affichageEn fonction du moment
Affichage de la dateEn fonction du client
Pays du client => langue
18
Pages statiques / dynamiques
Technologie web
2 façons de procéderDynamisme sur le client
Reçoit requête clientRenvoie des éléments au client (code + ??)Client effectue un traitementAvantage :
Plus d’interactivitéDécharge le serveur
InconvénientDépendance vis-à-vis du client
19
Pages statiques / dynamiques
Technologie web
2 façons de procéderDynamisme sur le serveur
Reçoit requête clientEffectue un traitementRenvoie le code correspondantAvantage :
Indépendance vis-à-vis du client (navigateur)Décharge le client
Inconvénient :Interactivité limitée
20
Les serveurs Web - technologies
Technologie web
Client ServeurDialogue
PHP
ASP JSP
CGI
Applet
ActiveX Servlet
Javascript
Internet
21
Les serveurs Web - technologies
Technologie web
Côté serveur ….
22
Côté serveur : Les CGI
Technologie web
Common Gateway InterfaceTechnologie la plus ancienneToujours la plus utiliséeProgramme sur le serveur (pré-compilé)
Placé dans un répertoire particulierTout langage possible
Langage Perl le plus utiliséC, C++, Fortran, etc. possibles
23
Côté serveur : Les CGITechnologie web
Utilisation de formulaires : GET(visible)/POST(stdin)Traitement de la requête par le pgrConstruction du code HTML correspondant
Inconvénient : Gourmand en ressources système
24
Côté serveur : servlets
Technologie web
Applets(navigateur)/Servlets(serveurs)Avantage:
Java donc exportable sur toute plateforme.S’exécutent dans un moteur servlet distinct du serveur web (ne gère pas la connexion)Réduire la charge du serveur par système de caches, de threads, …Peut communiquer avec des applications extérieures.
25
Côté serveur : servlets
Technologie web
Technologie Java (Java Server Pages)Langage de scriptsLe code source est transformé, recompilé et utilisé comme un servletAvantage
Accès bases de donnéesComposants Java (servlets, JavaBeans)Pas interprété: plus légé
26
Côté serveur : servlets
Technologie web
Deux façons pour coder des pages JSP Incorporer directement le code Java dans la pageUtiliser des classes java
servlets
Dans les pages : Code entre balises <% et %>
27
Côté serveur :Les ASP
Technologie web
ASP (Active Server Pages) ≠ JSPTechnologie MicrosoftMême principe que JSP
Combine code html (statique) et traitementsTraitements
28
Côté serveur : PHP
Technologie web
Langage de scriptsOrienté objetNon typé
S’intègre au code HTMLPermet un accès facile aux bases de données
29
Introduction
Technologie web : PHP
Qu'est ce que PHP?PHP (officiellement, ce sigle est un acronyme récursif pour PHP: Hypertext Preprocessor) est un langage de scripts généraliste et Open Source, spécialement conçu pour le développement d'applications web. Il peut être intégré facilement au HTML.
Ce qui distingue PHP des langages de script comme le Javascript est que le code est exécuté sur le serveur
30
Introduction
Technologie web : PHP
Réponse simple et claire, mais qu'est ce que cela veut dire? Un exemple : <html> <head> <title>Exemple</title> </head> <body>
<?php echo "Bonjour, je suis un script PHP!"; ?>
</body></html>
31
Introduction
Technologie web : PHP
Le grand avantage de PHP est qu'il est extrêmement simple pour les néophytes, mais offre des fonctionnalités avancées pour les experts. Ne craignez pas de lire la longue liste de fonctionnalités PHP. Vous pouvez vous plonger dans le code, et en quelques instants, écrire des scripts simples.
32
Introduction
Technologie web : PHP
<p>Ceci sera ignoré.</p><?php echo 'Alors que ceci sera analysé par PHP.'; ?><p>Ceci sera également ignoré.</p>
1. <?php echo 'Si vous voulez réaliser des documents XHTML ou XML, faites comme ceci'; ?>2. <script language="php"> echo 'quelques éditeurs (comme FrontPage) n\'aiment pas ce genre d\'instructions'; </script>3. <? echo 'ceci est le plus simple, une instruction SGML'; ?>
Exe1. Code PHP dans un document HTML
Exe2. Balises d'ouvertures et de fermetures PHP
33
Introduction
Technologie web : PHP
<?php$var = 'Moha';$Var = 'Mostapha';echo "$var, $Var"; $4site = 'pas encore'; $_4site = 'pas encore'; $täyte = 'tbarkalahe'?>
Exe3. Validité des noms de variables
34
Introduction
Technologie web : PHP
<?php$foo = 'Mostapha';// Assigne la valeur 'Mostapha'à $foo$bar = &$foo; // Référence $foo avec $bar.$bar = "Mon nom est $bar"; // Modifie $bar...echo $foo; // $foo est aussi modifiéeecho $bar;?>
Exe4. Assignation de référence
35
Introduction
Technologie web : PHP
Les Date en PHPNous allons apprendre maintenant à manipuler les dates sous différents formats et comment les afficher.
La fonction date() :Exp : <?
$date_du_jour = date("d-m-Y"); echo 'Nous sommes le '.$date_du_jour;
?>Code à utiliser avec la fonction date() :
36
Introduction
Technologie web : PHP
Les Date en PHPformat description : exemplea "am" ou "pm" minuscules : pmA "AM" ou "PM" majuscules : PMd jour du mois :01/31D jour de la semaine en 3 lettres : MonF nom du mois : Janvierh heure (format 12 heures avec 0 en entête) : 12H heure (format 24 heures avec 0 en entête) : 08g heure (format 12 heures sans 0 en entête) : 4G heure (format 24 heures sans 0 en entête) : 10i minutes : 44j jours du mois (sans 0 en entête) : 3m mois de l’année (0 en entête) : 04M mois de l’année en 3 lettres : juin mois de l’année (sans 0 en entête) : 4s secondes : 30y année à deux chiffres : 03Y année à 4 chiffres : 2003D’autre format sont disponible avec php5
37
Introduction
Technologie web : PHP
La fonction time() : C’est la date au format système, pour avoir un affichage personnalisé on doit utiliser une autre fonction (getdate) :Exp :<? $time = time(); // la date au format système$date = getdate($time); // passage de la variable time dans getdate pour ressortir les infosprint 'Nous sommes le '.$date[mday].' - '.$date[mon].' - '.$date[year] ; ?>
Affiche le 25-4-2006
La fonction getdate retourne un tableau nominatifCode de tableau à utiliser avec la fonction getdate()
38
Introduction
Technologie web : PHP
clés description :Exempleseconds Secondes : 30minutes minutes : 5hours heure de la journée de 0 à23 : 15mday jour du mois de 1 à 31 : 12wday jours de la semaine de 0 à 6 : 2mon moi de l’année : 4year année en 4 chiffres : 2003yday jours de l’année de 0 à 365 : 180weekday nom du jour de la semaine (en anglais) : Mondaymonth mois de l’année (en anglais) : January
39
Introduction
Technologie web : PHP
Exercices :1- Écrire un programme qui affiche les informations de la date courante sur le serveur.2- Écrire un programme qui affiche la date courante sur le serveur et celle du client (utiliser un script Java script).3- Écrire un programme qui affiche une page web entre 8h et 10h du 30 juin 2006 et affiche une autre page en dehors de cet intervalle. 4- Écrire un programme qui calcule et affiche le décalage entre la date sur le serveur et la date sur le client (utiliser des variables javascript initialiser avec du Php, le calcul se fera chez le client).5-Utiliser la fonction mktimeint mktime ( int hour, int minute, int second ,int month ,int day ,int year) Ecrire le code et analyser son résultat:<? echo "1er août 2006 est un " . date("l", mktime(0, 0, 0, 8, 1, 2006)); ?>Écrire un programme qui donne le jour de la semaine de votre prochain anniversaire
40
Merci