Tutoriel Ajax en exemples. nom Ajax ne se soit répandu, dès la parution d'un article de J. J. Garrett. Sommaire

Documents pareils
DOM - Document Object Model

TP JAVASCRIPT OMI4 TP5 SRC

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

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

Ajax, RIA et HTML Prise en charge d Ajax

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

Programmation Web. Madalina Croitoru IUT Montpellier

Rafraichissement conditionné d'une page en.net

Formulaire pour envoyer un mail

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

Dans l'article précédent, vous avez appris

Module BD et sites WEB

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

AWS avancé. Surveiller votre utilisation d EC2

Petite définition : Présentation :

SHERLOCK 7. Version du 01/09/09 JAVASCRIPT 1.5

STID 2ème année : TP Web/PHP

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

Le stockage local de données en HTML5

CRÉER, ROUTER ET GÉRER UNE NEWSLETTER, UN ING

Failles XSS : Principes, Catégories Démonstrations, Contre mesures

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

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

Séance d ED n 5 : HTML et JavaScript

Joomla! Création et administration d'un site web - Version numérique

Classe ClInfoCGI. Fonctions membres principales. Gestion des erreurs

Document Object Model (DOM)

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

CONCOURS DE L AGRÉGATION INTERNE «ÉCONOMIE ET GESTION» SESSION 2015 SECONDE ÉPREUVE

BES WEBDEVELOPER ACTIVITÉ RÔLE

Attaques de type. Brandon Petty

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

Développement d'applications Web HTML5 L'art et la manière avec Visual Studio 2015 et TFS

Cette application développée en C# va récupérer un certain nombre d informations en ligne fournies par la ville de Paris :

SYSTÈMES D INFORMATIONS

XML par la pratique Bases indispensables, concepts et cas pratiques (3ième édition)

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.

HTML5 et CSS3 pour des sites Responsive Web Design

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

API SMS CONSEIL HTTP V2.01. Sommaire. Documentation V1.0 au 21/05/2011

Démonstration de la mise en cache via HTML 5 sur iphone

Sommaire Accès via un formulaire d'identification... 4 Accès en mode SSO... 5 Quels Identifiant / mot de passe utiliser?... 6

Notes pour l utilisation d Expression Web

Formation : WEbMaster

{less} Guide de démarrage

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

E-TRANSACTIONS. Guide du programmeur API Plug-in. Version 1.1

Démarrer avec Ajax et le php: exemple d'application

PDO : PHP Data Object 1/13

Dans nos locaux au 98 Route de Sauve NÎMES. Un ordinateur PC par stagiaire, scanner, imprimante/copieur laser couleur

3W Academy Programme de Formation Développeur Intégrateur web Total : 400 heures

Stockage du fichier dans une table mysql:

\ \ / \ / / \/ ~ \/ _ \\ \ ` \ Y ( <_> ) \ / /\ _ / \ / / \/ \/ \/ Team

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

Programmation Web. Introduction

Sécurité des applications web. Daniel Boteanu

ASP.NET MVC 4 Développement d'applications Web en C# - Concepts et bonnes pratiques

Documentation CAS à destination des éditeurs

A DESTINATION DES SERVICES TIERS. Editeurs d applications et ressources pédagogiques connectées à l ENT

Aspects techniques : guide d interfaçage SSO

Utiliser un CMS: Wordpress

Soon_AdvancedCache. Module Magento SOON. Rédacteur. Relecture & validation technique. Historique des révisions

EXTENSION de Microsoft Dynamics CRM Réf FR 80452

Sécurité des sites Web Pas un cours un recueil du net. INF340 Jean-François Berdjugin

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

Programmation Internet Cours 4

Mise à jour : Octobre 2011

FTP : File TRansfer Protocol => permets d envoyer des gros fichiers sur un serveur (ou de télécharger depuis le serveur)

Introduction à. Oracle Application Express

Architectures web/bases de données

Mise en place d un serveur Proxy sous Ubuntu / Debian

LEA.C5. Développement de sites Web transactionnels

Projet en nouvelles technologies de l information et de la communication

Hébergement de site web Damien Nouvel

PLUGINS Guide du Développeur STEPHANE FERRARI. P l u X m l 5.4

Gestion de contenu d un site web avec TYPO3 Manuel de l administrateur

< Atelier 1 /> Démarrer une application web

1 / Introduction. 2 / Gestion des comptes cpanel. Guide débuter avec WHM. 2.1Créer un package. 2.2Créer un compte cpanel

L envoi d un formulaire par courriel. Configuration requise Mail Texte Mail HTML Check-list

contact@nqicorp.com - Web :

Formulaires et Compteurs

Attaques applicatives

Date: 22/10/12 Version: 3.2

KompoZer. Composition du site : _ une page d'accueil : index.html. _ une page pour la théorie : theorie.html. _ une page pour les photos : photos.

HTML5, CSS3 et JavaScript Développez vos sites pour les terminaux mobiles

Modélisation PHP Orientée Objet pour les Projets Modèle MVC (Modèle Vue Contrôleur) Mini Framework

HTML, CSS, JS et CGI. Elanore Elessar Dimar

les techniques d'extraction, les formulaires et intégration dans un site WEB

MEDIAplus elearning. version 6.6

PHP 5.4 Développez un site web dynamique et interactif

Présentation du Framework BootstrapTwitter

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

Je communique par

SECURITY ADVISORY VULNERABILITE SUR LES DONNEES CLIENTS MAGENTO

SP1 : Intégration d'une vidéo dans une mardi 21/01/2014. page web, fonction du format vidéo et 3 mercredi 22/01/2014

webmestre : conception de sites et administration de serveurs web 42 crédits Certificat professionnel CP09

Technologies du Web. Créer et héberger un site Web. Pierre Senellart. Page 1 / 26 Licence de droits d usage

Transcription:

Page 1 sur 9 Rechercher Ajax XUL JavaScript CSS HTML 5 FAQ-Forum Ajax Tutoriel Ajax XMLHttpRequest Frameworks Démos et scripts Tutoriel Ajax Web 2.0 Techniques Application web Tutoriel RSS XUL & XML Tutoriel XUL RDF DOM Ressources Logiciels Gecko et Firefox Lightbox Traductions English Asynchronous Javascript + XM La création de pages web dynamiques Ajax est seulement un nom donné à un ensemble de techniques préexistantes un objet coté client utilisable en JavaScript, qui est apparu avec Internet Explo C'était un objet Active X nommé alors XMLHTTP et généralisé sur les navigateu nom Ajax ne se soit répandu, dès la parution d'un article de J. J. Garrett. Sommaire But d'ajax En quoi consiste Ajax? Comment cela fonctionne? L'objet XMLHttpRequest Construire une requête, pas à pas 1. Créer une instance 2. Attendre la réponse 3. Faire la requête Exemples de pages Ajax 1. Lire un texte 2. Lire dans un fichier XML 3. Ecrire dans la page 4. Envoyer un texte Utiliser un fichier externe Comment faire un site Ajax? Inconvénients d'ajax Téléchargement Référence et ressources But d'ajax Une bonne répartition des ressources doit solliciter plus les postes clients, plut Ajax permet d'effectuer des traitements sur le poste client (avec JavaScript) à La création de pages web dynamiques auparavant se faisait coté serveur. Les m lecteur de la page sont des requêtes envoyées au serveur, faisant qu'il crée un travers le réseau Internet en utilisant des services web, ou un langage intégré nécessaire. Ajax permet de modifier partiellement la page affichée par le navigateur pour

Page 2 sur 9 entière. Par exemple le contenu d'un champ de formulaire peut être changé, sans avoi menu, etc. En quoi consiste Ajax? Ajax est une technique qui fait usage des éléments suivants: HTML. CSS (Cascading Style-Sheet) pour la présentation de la page. JavaScript (EcmaScript) pour les traitements locaux, et DOM (Documen page ou du formulaire ou aux éléments d'un fichier xml pris sur le serve exemple)... - L'objet XMLHttpRequest lit des données ou fichiers sur le serveur de f - Si besoin, DOMparser intègre un document XML. PHP ou un autre langage de scripts peut être utilisé coté serveur. Le terme "Asynchronous", asynchrone en français, signifie que l'exécution de J serveur qui sera traitée quand elle arrivera. Tandis qu'en mode synchrone, le n serveur. Dynamic HTML est aussi un ensemble de techniques, qui comprend: HTML, CS Cela permet de modifier le contenu d'une page selon les commandes de l'utilis fournies ou avec un texte tapé par l'utilisateur. Ajax est DHTML plus l'objet XHR pour communiquer avec le serveur. Comment cela fonctionne? Ajax utilise un modèle de programmation comprenant d'une part la présentat Les évènements sont les actions de l'utilisateur, qui provoquent l'appel des fon L'interaction avec l'utilisateur se fait à partir des formulaires ou boutons html. Ces fonctions JavaScript identifient les éléments de la page grâce au DOM et c XMLHttpRequest. Pour recueillir des informations sur le serveur cet objet dispose de deux métho open: établit une connexion. send: envoie une requête au serveur. Les données fournies par le serveur seront récupérées dans les champs de l'ob responsexml pour un fichier XML ou responsetext pour un fichier de texte bru. Noter qu'il faut créer un nouvel objet XMLHttpRequest, pour chaque fichier qu Il faut attendre la disponibilité des données, et l'état est donné par l'attribut re Les états de readystate sont les suivants (seul le dernier est vraiment utile): 0: non initialisé. 1: connexion établie. 2: requête reçue. 3: réponse en cours. 4: terminé.

Page 3 sur 9 L'objet XMLHttpRequest Elle permet d'interagir avec le serveur, grâce à ses méthodes et ses attributs. Attributs Schéma du readystate le code d'état passe successivement de 0 à 4 qu status 200 est ok 404 si la page n'est pas trouvée. responsetext contient les données chargées dans une chaîne responsexml contient les données chargées sous forme xml, onreadystatechange propriété activée par un évènement de changem

Page 4 sur 9 Méthodes open(mode, url, boolean) send("chaine") mode: type de requête, GET ou POST url: l'endroit ou trouver les données, un fichier boolean: true (asynchrone) / false (synchrone). en option on peut ajouter un login et un mot de null pour une commande GET. Construire une requête, pas à pas Première étape: créer une instance C'est juste une instance de classe classique mais deux options à essayer pour c if (window.xmlhttprequest) // Objet standard xhr = new XMLHttpRequest(); // Firefox, Safari,... else if (window.activexobject) // Internet Explorer xhr = new ActiveXObject("Microsoft.XMLHTTP"); ou plus simplement, on peut utiliser les exceptions: try xhr = new ActiveXObject("Microsoft.XMLHTTP"); catch(e) // Echec, utiliser l'objet standard xhr = new XMLHttpRequest(); // Ess Seconde étape: attendre la réponse Le traitement de la réponse et les traitements qui suivent sont inclus dans une sera assignée à l'attribut onreadystatechange de l'objet précédemment créé. xhr.onreadystatechange = function() // instructions de tra if (xhr.readystate == 4) // Reçu, OK else

Page 5 sur 9 // Attendre... Troisième étape: faire la requête elle-même Deux méthodes de XMLHttpRequest sont utilisées: - open: commande GET ou POST, URL du document, true pour asynchrone. - send: avec POST seulement, données à envoyer au serveur. La requête ci-dessous lit un document sur le serveur. xhr.open('get', 'http://www.xul.fr/fichier.xml', true); xhr.send(null); Exemple de programme Ajax Lire un texte <html> <head> <script> function submitform() var xhr; try xhr = new ActiveXObject('Msxml2.XMLHTTP'); catch (e) try xhr = new ActiveXObject('Microsoft.XMLHTTP'); catch (e2) try xhr = new XMLHttpRequest(); catch (e3) xhr = false; xhr.onreadystatechange = function() if(xhr.readystate == 4) if(xhr.status == 200) document.ajax.dyn="received:" + xhr.responset else document.ajax.dyn="error code " + xhr.status; ; xhr.open( GET", "data.xml", true); xhr.send(null); </script> </head> <body> <FORM method="post" name="ajax" action=""> <INPUT type="button" value="submit" ONCLICK=" <INPUT type="text" name="dyn" value="">

Page 6 sur 9 </FORM> </body> </html> Syntaxe de formulaire utilisant A Commentaires sur le code: new ActiveXObject(Microsoft.XMLHTTP) Ce constructeur est pour Internet Explorer. new XMLHttpRequest() Ce constructeur est pour tout autre navigateur incluant Firefox. http.onreadystatechange On associe un traitement (une fonction anonyme en l'occurrence) à cet indica http.readystate == 4 L'état 4 signifie que la réponse est envoyée par le serveur et disponible. http.status == 200 Ce status signifie ok, sinon un code d'erreur quelconque est envoyé, 404 par http.open( "POST", "data.xml", true); - POST ou GET -url du fichier. - true pour asynchrone (false pour synchrone). http.setrequestheader("content-type", "application/x-www-form-urlencod Cette méthode s'utilise seulement avec POST. http.send(document.getelementbyid("typedtext").value); Envoi des données au serveur. Les données sont prises dans le champ dont l' l'utilisateur grâce à un formulaire. Démonstration Envoyer Reçu: Hello you! Lire dans un fichier XML Pour lire des données dans un fichier XML il suffit de remplacer la ligne: document.ajax.dyn=""reçu: " + xhr.responsetext; par ce code: // Assigner le fichier XML à une variable var doc = xhr.responsexml; // Lire le premier élément avec DOM var element = doc.getelementsbytagname('root').item(0);

Page 7 sur 9 // Copier le contenu dans le formulaire document.ajax.dyn.value= element.firstchild.data; Démonstration Envoi Reçu: Hello you! Ecrire dans la page Le texte récupéré est inscrit dans le corps de la page et non dans un champ de formulaire textfield et la seconde partie remplace l'assignement dans la foncti <div id="zone">... un texte à remplacer... </div> document.getelementbyid("zone").innerhtml = "Received:" Démonstration Lancer Reçu: Hello you! Envoyer un texte Un texte est envoyé au serveur et sera écrit dans un fichier. L'appel de la méth POST, le second est le nom du fichier ou du script qui recevra les données et d argument une valeur qui est une chaîne de paramètres. xhr.open("post", "ajax-post-text.php", true); xhr.setrequestheader("content-type", "application/x-www xhr.send(data); L'argument de send est au format des paramètres de la méthode POST. S'il y a "et" commercial: var data = "file=" + url + "&content=" + content; Le paramètre "file" est un fichier qui contiendra le contenu "content". Le nom éviter qu'un autre fichier ne puisse être modifié. Une démonstration de POST est incluse dans l'archive.

Page 8 sur 9 Utiliser un fichier externe Il est plus simple d'inclure un fichier JavaScript. Cette ligne sera incluse dans la <script src="ajax.js" type="text/javascript"></script> Et la fonction est appelée avec cette instruction: var xhr = createxhr(); Le script du fichier externe: function createxhr() var request = false; try request = new ActiveXObject('Msxml2.XMLHTTP'); catch (err2) try request = new ActiveXObject('Microsoft.XMLHTT catch (err3) try request = new XMLHttpRequest(); catch (err1) request = false; return request; Comment faire un site Ajax? Il faut une interface prédéfinie, comme celles qui sont indiquées dans les liens Puis votre programme JavaScript, intégré dans une page web, et accédant par page, envoie des requêtes au serveur pour obtenir un fichier. Celui-ci est explo jour sur le poste client, de façon fluide et instantanée. Inconvénients d'ajax - Si JavaScript est désactivé, Ajax ne peut fonctionner. Il faut demander au lect - Si l'on charge les données à afficher de façon dynamique, elles ne font pas pa compte par les moteurs de recherche. - L'aspect asynchrone fait que les modifications se font avec un délai (si le trait déconcertant. - Le bouton de retour en arrière peut se trouver désactivé (ce n'est pas le cas d corrigé. Téléchargement Demonstrations et code source. Les démonstrations de la page dans des fichiers individuels et la démonstration de On peut les tester localement avec un serveur local comme Wamp.

Page 9 sur 9 Références Ajax se fonde sur ces spécifications par le W3C: XML 1.1, HTML 4, DOM 2, CSS 2. ECMAScript 1.5 (Standard de JavaScript par ECMA). Spécification de XMLHttpRequest par le W3C. HTTP 1.1 Codes d'états (404 etc.). Mais a été décrit pour la première fois dans cet article: L'article de Jesse James Garett qui a lancé le nom Ajax (traduction française). Ressources Conseil internet Conseil en communication internet. Assistance, conception, hébe Création site web Créez un site internet adapté à votre budget www.starstalents.com Un Site Internet Unique? Votre site web pour moins de 500 Devis gratuit. Conta Compléments JSON. Le second format de données pour Ajax. Répertoire ODP consacré à Ajax. Ajax et PHP. Etude de l'interaction avec un script PHP par les commandes GET e Outils Firebug. Extension Firefox pour déboguer Ajax. Anaa. Un framework simple basé sur ce tutoriel. NetBeans. Un IDE pour réaliser des applications Ajax. Cadres d'applications (frameworks) Voir Les cadres d'application Ajax. 2006-2011 Denis Sureau. Xul.fr