Technologies Web. Farah Benamara Zitoune Maître de conférences IRIT-UPS benamara@irit.fr



Documents pareils
TP JAVASCRIPT OMI4 TP5 SRC

Module BD et sites WEB

Module Com231A - Web et Bases de Données Notion 5 : Formulaires et utilisation des Bases de Données avec PHP

Création de formulaires interactifs

NFA016 : Introduction. Pour naviguer sur le Web, il faut : Naviguer: dialoguer avec un serveur web

Introduction. PHP = Personal Home Pages ou PHP Hypertext Preprocessor. Langage de script interprété (non compilé)

Serveur d'application Client HTML/JS. Apache Thrift Bootcamp

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau)

Les sites Internet dynamiques. contact : Patrick VINCENT pvincent@erasme.org

Séance d ED n 5 : HTML et JavaScript

Programmation Internet Cours 4

Installation d un serveur HTTP (Hypertext Transfer Protocol) sous Débian 6

WiFi Security Camera Quick Start Guide. Guide de départ rapide Caméra de surveillance Wi-Fi (P5)

DOM - Document Object Model

Internet. DNS World Wide Web. Divers. Mécanismes de base Exécution d'applications sur le web. Proxy, fire-wall

WEB page builder and server for SCADA applications usable from a WEB navigator

Formulaire pour envoyer un mail

Attaques applicatives

Sécurité des applications web. Daniel Boteanu

Gilles.Roussel univ-mlv.fr HTTP/1.1 RFC 2068

Développement des Systèmes d Information

Programmation Web. Madalina Croitoru IUT Montpellier

TD HTML AVEC CORRECTION

Architectures web/bases de données

Bases de Données et Internet

TIC. Réseau informatique. Historique - 1. Historique - 2. TC - IUT Montpellier Internet et le Web

L3 informatique TP n o 2 : Les applications réseau

Application Web et J2EE

CREATION d UN SITE WEB (INTRODUCTION)

TP JEE Développement Web en Java. Dans ce TP nous commencerons la programmation JEE par le premier niveau d une application JEE : l application web.

HTML/CSS - Travaux Pratiques 2

Les services usuels de l Internet

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

Vanilla : Virtual Box

Instructions Mozilla Thunderbird Page 1

Extended communication server 4.1 : VoIP SIP service- Administration

INFORMATIQUE & WEB. PARCOURS CERTIFICAT PROFESSIONNEL Programmation de sites Web. 1 an 7 MODULES. Code du diplôme : CP09

Petite définition : Présentation :

Micro-ordinateurs, informations, idées, trucs et astuces utiliser le Bureau à distance

Bases de données et Interfaçage Web

Techniques de Programmation pour Internet

WEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES

How to Login to Career Page

Création d un service web avec NetBeans 5.5 et SJAS 9

Pratique et administration des systèmes

Hébergement de site web Damien Nouvel

Activités HTML. Code: act-html

Document Object Model (DOM)

Programmation Web. Introduction

Gestion de stock pour un magasin

Mise en place d un serveur Proxy sous Ubuntu / Debian

Les solutions de paiement CyberMUT (Crédit Mutuel) et CIC. Qui contacter pour commencer la mise en place d une configuration de test?

Formation Webmaster : Création de site Web Initiation + Approfondissement

FORMATION PcVue. Mise en œuvre de WEBVUE. Journées de formation au logiciel de supervision PcVue 8.1. Lieu : Lycée Pablo Neruda Saint Martin d hères

UML : Unified Modeling Language

Langage HTML (2 partie) <HyperText Markup Language> <tv>lt La Salle Avignon BTS IRIS</tv>

Configurer la supervision pour une base MS SQL Server Viadéis Services

Master1 ère année. Réseaux avancés I. TP nº5 filière ISICG

10. Base de données et Web. OlivierCuré

HTTP HTTP. IUT1 dpt SRC L Isle d Abeau Jean-françois Berdjugin. Introduction et architecture Messages Authentification Conclusion

Les outils de création de sites web

Activité sur Meteor. Annexe 1 : notion de client-serveur et notion de base de données

Mise en œuvre des serveurs d application

1-Introduction 2. 2-Installation de JBPM 3. 2-JBPM en action.7

1. Formation F5 - Local Traffic Manager Configuring (LTM)

Les Triggers SQL. Didier DONSEZ. Université de Valenciennes Institut des Sciences et Techniques de Valenciennes

Principales failles de sécurité des applications Web Principes, parades et bonnes pratiques de développement

Panel des technologies Web

PDO : PHP Data Object 1/13

Exercices sur SQL server 2000

HTML. Notions générales

Théorie : internet, comment ça marche?

HTML, CSS, JS et CGI. Elanore Elessar Dimar

TABLE DES MATIERES A OBJET PROCEDURE DE CONNEXION

Devenez un véritable développeur web en 3 mois!

Network Shutdown Module V3 Extension du Manuel Utilisateur pour architecture Virtualisée VMWare ESX Server 3, 3.5

VXPERT SYSTEMES. CITRIX NETSCALER 10.1 et SMS PASSCODE 6.2. Guide d installation et de configuration pour Xenapp 6.5 avec SMS PASSCODE 6.

VTP. LAN Switching and Wireless Chapitre 4

Wireless IP Camera 75790, 75790WH, Quick Start Guide Guide de départ rapide

Attaques de type. Brandon Petty

BIRT (Business Intelligence and Reporting Tools)

Module pour la solution e-commerce Magento

Serveurs de noms Protocoles HTTP et FTP

(1) Network Camera

Serveur d Applications Web : WebObjects

Once the installation is complete, you can delete the temporary Zip files..

1. La plate-forme LAMP

PHP et mysql. Code: php_mysql. Olivier Clavel - Daniel K. Schneider - Patrick Jermann - Vivian Synteta Version: 0.9 (modifié le 13/3/01 par VS)

Intranet et les Bases de Données

Un serveur web léger et ouvert

Paris Airports - Web API Airports Path finding

Le serveur HTTPd WASD. Jean-François Piéronne

La programmation orientée objet Gestion de Connexions HTTP Manipulation de fichiers Transmission des données PHP/MySQL. Le langage PHP (2)

4. SERVICES WEB REST 46

Glossaire. ( themanualpage.org) soumises à la licence GNU FDL.

Transcription:

Technologies Web Farah Benamara Zitoune Maître de conférences IRIT-UPS benamara@irit.fr

Plan du cours Cours 1 : Introduction HTML/CSS Cours 2 : Introduction programmation web + javascirpt Cours 3 : Introduction PHP Cours 4 : Php et Base de données Cours 5 : Php session+cookies Si on a le temps : Introduction à Ajax et problèmes de sécurité

Plan du cours 2 I. Architecture client-serveur II. Page web statique vs. Page web dynamique III. Notions de base du Javascript IV. Javascript et formulaires HTML

Plan du cours 2 I. Architecture client-serveur II. Page web statique vs. Page web dynamique III. Notions de base du Javascript IV. Javascript et formulaires HTML

Architecture client-serveur

Architecture client-serveur

Architecture client-serveur

Architecture client-serveur

Architecture client-serveur

Architecture client-serveur : le protocole HTTP

Plan du cours 2 I. Architecture client-serveur II. Page web statique vs. Page web dynamique III. Notions de base du Javascript IV. Javascript et formulaires HTML

Rappels sur l architecture client serveur URL: Uniform Resource Locator Ensemble des matériels, logiciels et liaisons sur lequel sont implémentés les sites WEB et qui permettent de les rendre consultables sur le WEB Le navigateur interprète la page et l affiche à l écran Pages Web Statiques

Les pages web dynamiques Le serveur envoie, le client exécute dépendance vis-à-vis du client plus d interactivité Le serveur exécute, le client reçoit indépendance vis-à-vis du client (navigateur) interactivité limitée

Le serveur envoie, le client exécute Programme JavaScript s exécutant sur la machine de l utilisateur. Script JavaScript intégré dans un code HTML

Le serveur exécute, le client reçoit Le navigateur affiche la page à l écran Script PHP intégré dans un code HTML Programme PHP s exécutant sur le serveur.

Les pages web dynamiques Pour réaliser des pages dynamiques, nous avons besoin de langages de scripts. langage de programmation interprété et non compilé comme C++ ou JAVA Ces scripts sont conçus pour le développement d'applications web. Ils peuvent être intégrés facilement au code HTML

Intérêt du traitement côté serveur Réduction du temps de téléchargement puisque le client ne reçoit qu'une simple page HTML (=>diminution du trafic réseau) Absence de problème de compatibilité des navigateurs Offrir au client des données qui sont dans une base de données, etc.

Technologie pour les serveurs HTTP CGI : Common Gateway Interface Standard industriel qui indique comment passer l'information du serveur HTTP au programme et comment en récupérer le contenu généré. Permet de passer des paramètres aux requêtes Exécution d un programme sur le serveur Les informations renvoyées au client sont statiques Des requêtes successives permettent le dynamisme

Scripts côté serveur les plus utilisés Perl (Practical Extraction and Report Language) PHP (Hypertext Preprocessor) JSP (Java Server Pages) ASP (Active Server Pages)

Plan du cours 2 I. Architecture client-serveur II. Page web statique vs. Page web dynamique III. Notions de base du Javascript IV. Javascript et formulaires HTML

Main lines Inclusion : specific markup <script> </script> Main parameters : Text type : type Used language : language OO programming style Call/execution : Simple inclusion or... HTML event

1st example ;-) <html> <head> <title>my first Javascript</title> </head> <body> <script language="javascript" type="text/javascript"> document.write("hello everybody!"); document.close (); </script> </body> </html> Exercise: center ;-) Create alert... with alert(...) Pb: we want to control when -> events

With an HTML event! <html> <head> <title>my second Javascript for a simple computation</title> <script type="text/javascript" language="javascript"> function compute(){ //function definition var x=1 ; var y = 2; //user defined variables var result = x + y; document.write("the result is " + result + "<br>"); document.close();} </script> </head> <body> Click on the following button to run the script! <input type="button" value="calculate" OnClick="compute()"> <!--call associated to an event --> </body> </html> Pb: on veut nous même entrer les paramètres -> HTML FORM

Plan du cours 2 I. Architecture client-serveur II. Page web statique vs. Page web dynamique III. Notions de base du Javascript IV. Javascript et formulaires HTML

Les formulaires Début/fin du formulaire <form > Entrez votre prénom : <input type="text" name="prenom" value= benamara ></input> <input type="submit" value="valider"> </form>

Les formulaires HTML: rappels Zone de saisie monolignes Syntaxe: <input type="text" name= nom"></input> Attributs de la balise input: Size: taille de la zone de saisie Maxlenght: taille maximale acceptée Type: int, float, date, url, password Zone de saisie multlignes Syntaxe: <textarea name= nom cols=?? Rows=??>.Texte.</textarea> Attributs de la balise textarea: Cols: nombre de colonnes Rows: nombre de lignes

Les formulaires HTML Liste d options Syntaxe: <select name="nom"> <option value="valeur1" >texte</option> <option value="valeur2" >texte</option>... </select> Eléments de liste sélectionnés par défaut. Attribut selected dans la balise <option> Liste à choix multiples Attribut multiple dans la balise <select>

Les formulaires HTML Liste d options: un exemple

Les formulaires HTML Boutons d option ou boutons radio Syntaxe: <input type="radio" name="nom" value="valeur" {checked} > Cases à cocher Syntaxe <input type="checkbox" name="nom" value="valeur" {checked} >

Les formulaires HTML Boutons d option ou boutons radio Syntaxe: <input type="radio" name="nom" value="valeur" {checked} > <input type="radio" name="civil" value="m"> Monsieur <input type="radio" name="civil" value="md" checked> Madame <input type="radio" name="civil" value="melle"> Mademoiselle

Les formulaires HTML

Les formulaires HTML Les boutons d action ou de commande Bouton d envoi <input type="submit" name="nom" value="valeur"> Bouton d annulation <input type="reset" name="nom" value="valeur">

With forms! <html> <head> <title>my second Javascript for a simple computation</title> <script language="javascript" type="text/javascript"> function go(){ alert("hello "+maforme.votreprenom.value + " " + maforme.votrenom.value) } </script> </head> <body> <form name="maforme"> Enter your surname : <input type="text" name="votrenom"><br/> Enter your firstname : <input type="text" name="votreprenom"> <input type="button" value="clic here" OnClick="go()"> </form> </body> </html> Pb: write inside the page? Solution: getelementbyid()

Write inside the page <html> <head> <title>my second Javascript for a simple computation</title> <script language="javascript" type="text/javascript"> function go(){ document.getelementbyid('myarea').innerhtml = "Hello " + maforme.votreprenom.value + " " + maforme.votrenom.value; document.getelementbyid('mazone').innerhtml += '<br/>'; } </script> </head> <body> <form name="maforme"> Enter your surname : <input type="text" name="votrenom"><br/> Enter your firstname : <input type="text" name="votreprenom"> <input type="button" value="clic here" OnClick="go()"> </form> <div id="myarea"></div><! - preserve space --> </body> </html>

Exercice Créer le formulaire suivant :

Exercice Compléter l'action associée au bouton Go pour créer une calculette <script language="javascript"> function add(form){ // a form parameter var a=parsefloat(form.ope1.value);//transform text into real value var b=parsefloat(form.ope2.value); var result=a+b; form.result.value=result; //met le resultat au bon endroit }...etc pour les autres opérateurs function compute(form){ if (form.operator.value =="1") {add(form);} else if (form.operator.value == "2") {mult(form);} else div(form); }

Parameters checking Objective: check before sending To not overload the server To not overload the network! Simple method: HTML forms For each parameter, validity checking Event to control execution

Basic example function check1(s){ var OK=true; if (s=="") {alert("put your name inside the box");ok=false;} else {alert("ok")}; return OK } @@@@@ BODY <form name="myform" action="mailto:benamara@irit.fr" onsubmit="return check1(document.myform.myname.value)"> put your name inside the box : <input type="text" name="myname" size="20"> <input type="submit" value="send"> </form>

JavaScript focus function goal: to improve the UX ;-) Parameter checking Focus on the first wrong parameter in a form How: using the focus() function Algo: If notok(param.value) {param.focus()}

Exercise 1. Use it for your previous HTML forms 2. Try the function select()! 3. Show me!

Exercise 1. Use it for your previous HTML forms 2. Try the function select()! 3. HTML5 <input required... > allows to force 4. not a standard (safari,etc.)