AJAX et l'objet XmlHttpRequest

Dimension: px
Commencer à balayer dès la page:

Download "AJAX et l'objet XmlHttpRequest"

Transcription

1 AJAX et l'objet XmlHttpRequest Sommaire I- Introduction II- Requêtes synchrones et asynchrones III- L'objet XmlHttpRequest - IV- Utilisation de l'objet V- Premier exemple - VI- Passer des paramètres au script PHP VII- Interroger une base de données VIII- Conclusion - P.1 P.2 P.2 P.3 P.4 P.6 P.10 P.16 I- Introduction L AJAX (Asynchronous Javascript And XML) et un concept permettant de faire des appels asynchrones au serveur depuis le client. Lors de ces appels, le serveur retournera du XML qui sera «récupéré» par javascript et traité. Ceci peut être utile lorsque l on veut exécuter un script PHP sans recharger la page en entière (pour par exemple interroger la base de données au fur et à mesure d une saisie dans une textbox). En effet, le langage JavaScript est exécuté du côté client et non serveur, c est là que tout se joue, pour exécuter un script PHP, le code JavaScript fera appel au script PHP, récupèrera les informations retournés par celui-ci et les affichera. Ce code sera exécuté du côté client, donc aucun rechargement de la page. Voici plusieurs possibilités de l AJAX : -Insérer données dans une base. -Listes déroulantes liées. -Contrôle de formulaire. -Modification du contenu de la page en cours -etc 1

2 II- Requêtes synchrones et asynchrones Avant de rentrer dans les détails, il faut savoir ce qu est une requête synchrone et asynchrone, ou du moins connaitre la différence entre les deux. Comme son nom l indique, AJAX permet d envoyer des requêtes asynchrones au serveur, mais il peut très bien envoyer des requêtes synchrones. Pour choisir entre les 2, c est le troisième paramètre de la méthode open() (voir chapitre 3- Utilisation de l objet) qui gère cela. Le mode asynchrone est surement celui qui est utilisé le plus souvent, en effet celui-ci permet de ne pas figer la page lorsque le script php s exécute et communique avec le serveur. Au contraire, le mode synchrone lui fige la page le temps que le script s exécute. Ce mode est donc réservé pour de petits scripts, qui ne mettront pas longtemps à s exécuter. En cas de doute, il vaut mieux utiliser l asynchrone. III- L'objet XmlHttpRequest AJAX utilise un composant embarqué dans maintenant la plupart des navigateurs Web. En fonction de ceux-ci, il peut y avoir un comportement varié, voir un résultat non voulu (inutile de rappeler que dans le développement Web, il faut vérifier que tout soit fonctionnel sur différent navigateur..). Pour utiliser AJAX, nous allons donc utiliser un objet XmlHttpRequest qui va nous permettre de faire des requêtes http pour échanger du XML avec le serveur. Code : //Création de l objet XmlHttpRequest var xhr = null; if(window.xmlhttprequest) // Firefox et autres xhr = new XMLHttpRequest(); else if(window.activexobject){ // Internet Explorer try { xhr = new ActiveXObject("Msxml2.XMLHTTP"); catch (e) { xhr = new ActiveXObject("Microsoft.XMLHTTP"); else { // XMLHttpRequest non supporté par le navigateur alert("votre navigateur ne supporte pas les objets XMLHTTPRequest..."); xhr = false; 2

3 On peut constater que Internet Exporer se démarque des autres, en effet, celui-ci utilise ActivX, néanmoins aucun message de sécurité ne sera affiché pour ce genre de script. IV- Utilisation de l'objet Nous avons donc créé notre objet nommé xhr prêt à être utilisé, pour cela, nous avons à disposition différentes propriétés et méthodes : open(«methode», «url»,flag) Description : Ouvre la connexion avec le serveur. -Methode : «GET» ou «POST». -url : l url vers le script php en question (si methode GET, les paramètres doivent être fournis dans l url). -flag : true pour un dialogue asynchrone, sinon false. setrequestheader(«nom», «valeur») Description : Assigne une valeur à un header HTTP qui sera envoyé lors de la requête. Par exemple pour un POST : -nom : «Content-Type» -valeur : «application/x-www-form-urlencoded» send(«parametre») Description : Envoi la requête au serveur -parametre : null pour méthode GET -parametre : «nomparam1=valeurparam1&nomparam2=etc..» pour méthode POST abort() Description : Abandonne la requête onreadystatechange Description : Ici, on va lui affecter une fonction à nous qui sera exécutée à chaque changement d état de notre objet. readystate Description : C est cette propriété qui sera testé dans onreadystatechange. Elle représante l état de l objet : 0 : non initialisé. 1 : Ouverture (open() vien de s exécuter). 2 : Envoyé (send() vient de s exécuter). 3 : En cours (La requête est envoyée, en attente de la réponse du serveur). 4 : Prêt (toutes les données sont chargées). 3

4 status Description : C est le code de la réponse du serveur 200 : OK 404 : Page non trouvée Etc.. statustext Description : Message associé à status. responsetext Description : Réponse retournée par le serveur, au format texte. responsexml Description : Réponse retournée par le serveur, au format XML. V- Premier exemple Maintenant que nous avons vu les différentes méthodes et propriétés, un petit exemple s impose. Le but de cet exemple est basique : on clique sur un bouton, celui ci utilise AJAX pour exécuter un script PHP, le résultat est affiché sous forme d'alert(). La compréhension du code n'est pas très compliqué : index.html <html> <head> <title>tuto AJAX [DevBBS]</title> <script type='text/javascript'> /** * Construction de l objet */ function getxhr(){ var xhr = null; if(window.xmlhttprequest) // Firefox et autres xhr = new XMLHttpRequest(); else if(window.activexobject){ // Internet Explorer try { xhr = new ActiveXObject("Msxml2.XMLHTTP"); catch (e){ xhr = new ActiveXObject("Microsoft.XMLHTTP"); 4

5 else { // XMLHttpRequest non supporté par le navigateur alert("votre navigateur ne supporte pas les objets XMLHTTPRequest..."); xhr = false; return xhr /** * Méthode qui sera appelée sur le click du bouton */ function go(){ var xhr = getxhr() // On défini ce qu'on va faire quand on aura la réponse xhr.onreadystatechange = function(){ // On ne fait quelque chose que si on a tout reçu et que le serveur est ok if(xhr.readystate == 4 && xhr.status == 200){ alert(xhr.responsetext); xhr.open("get","ajax.php",true); xhr.send(null); </script> </head> <body> <input type='button' value='goo!!' onclick='go()' /> </body> </html> ajax.php : <?php echo "Appel de PHP reussi avec AJAX :D";?> Script PHP tout con mais cela montre bien que celui ci est exécuté sans rechargement de page. A noter qu il n y a pas besoin de recharger index.html après avoir modifié le script PHP. Celui-ci étant rappelé à chaque clique sur le bouton, il sera rafraichi. 5

6 VI- Passer des paramètres au script PHP Il est bien entendu possible de passer des paramètres au script PHP, afin que son exécution le rendre plus dynamique. On a vu les différentes méthodes et propriétés mis à notre disposition pour utiliser notre objet, vous avez peut être déjà compris comment on enverra nos paramètre. Pour une méthode GET : Pour passer des paramètre à la méthode GET, nous allons utiliser la méthode open(). Pour rappel : open(«methode», «url»,flag) Description : Ouvre la connexion avec le serveur. -Methode : «GET» ou «POST». -url : l url vers le script php en question (si methode GET, les paramètres doivent être fournis dans l url). -flag : true pour un dialogue asynchrone, sinon false. Le passage des paramètres se fait donc via l url (rien d extraordinaire je le sais ^^). Imaginons une textbox d id param. Pour envoyer le contenu de cette textbox nous procèderons come suit : Code : var param = document.getelementbyid("param").value; var url = "ajax.php?p="; xhr.open("get",url+param,true) ; xhr.send(null); Simple non? Voici la nouvelle function appel_ajax() : Code : function appel_ajax(){ var xhr = getxhr() // On défini ce qu'on va faire quand on aura la réponse xhr.onreadystatechange = function(){ // On ne fait quelque chose que si on a tout reçu et que le serveur est ok if(xhr.readystate == 4 && xhr.status == 200){ //Ici sera afficher le résultat de notre script PHP ajax.php alert(xhr.responsetext); var param = document.getelementbyid("param").value; var url = "ajax.php?p="; 6

7 xhr.open("get",url+param,true) ; xhr.send(null); Il est aussi possible d ajouter un paramètre à la fonction appel_ajax(), par exemple : Code : function appel_ajax(param){ var xhr = getxhr() [ ] var url = "ajax.php?p="; xhr.open("get",url+param,true) ; xhr.send(null); Pour une méthode POST : Pour envoyer des paramètre avec la méthode POST c est la fonction send() qui nous intéresse : send(«parametre») Description : Envoi la requête au serveur -parametre : null pour méthode GET -parametre : «nomparam1=valeurparam1&nomparam2=etc..» pour méthode POST Rien de bien compliqué, il suffit de remplir le paramètre de la méthode send() par le(s) paramètre(s) voulu : Code : var param = document.getelementbyid("param").value; var url = "ajax.php"; xhr.open("post",url,true) ; xhr.setrequestheader('content-type','application/x-www-form-urlencoded'); xhr.send("param="+param); Attention toutefois à bien définir la propriété setrequestheader lorsque l on veut envoyer des paramètres par la méthode POST, c est la seul différence qu il y a avec la méthode GET. 7

8 Codes de ces exemples : index.html <html> <head> <title>tuto AJAX [DevBBS]</title> <script type='text/javascript'> /** * Construction de l objet */ function getxhr(){ var xhr = null; if(window.xmlhttprequest) // Firefox et autres xhr = new XMLHttpRequest(); else if(window.activexobject){ // Internet Explorer try { xhr = new ActiveXObject("Msxml2.XMLHTTP"); catch (e) { xhr = new ActiveXObject("Microsoft.XMLHTTP"); else { // XMLHttpRequest non supporté par le navigateur alert("votre navigateur ne supporte pas les objets XMLHTTPRequest..."); xhr = false; return xhr /** * Méthode qui sera appelée sur le click du bouton */ function appel_ajax(){ var xhr = getxhr() // On défini ce qu'on va faire quand on aura la réponse xhr.onreadystatechange = function(){ // On ne fait quelque chose que si on a tout reçu et que le serveur est ok if(xhr.readystate == 4 && xhr.status == 200){ //Ici sera afficher le résultat de notre script PHP ajax.php alert(xhr.responsetext); if(document.formmeth.methode[0].checked){//methode GET var param = document.getelementbyid("param").value; var url = "ajax.php?p="; xhr.open("get",url+param,true) ; xhr.send(null); if(document.formmeth.methode[1].checked){//methode POST 8

9 var param = document.getelementbyid("param").value; var url = "ajax.php"; xhr.open("post",url,true) ; xhr.setrequestheader('content-type','application/x-www-formurlencoded'); xhr.send("param="+param); </script> </head> <body> <form name="formmeth"> Choisissez une methode : <input type="radio" name="methode" id="meth" value="mget" checked>get</input><input type="radio" name="methode" id="meth" value="mpost">post</input></form><br> Paramètre : <input type="text" id="param"> <input type='button' value='envoyer la requête' onclick="appel_ajax()" /> </form> </body> </html> ajax.php <?php if(isset($_get["p"])){ echo "Appel de PHP reussi avec AJAX :D.\n"; if($_get["p"]!=null) echo "Param : ".$_GET["p"]." \n"; else echo "Pas de parametre\n"; echo "Methode : GET"; elseif(isset($_post["param"])){ echo "Appel de PHP reussi avec AJAX :D.\n"; if($_post["param"]!=null) echo "Param : ".$_POST["param"]." \n"; else echo "Pas de parametre\n"; echo "Methode : POST";?> 9

10 VII- Interroger une base de données Nous allons voir maintenant comment interroger une base de données grâce à AJAX, et donc sans recharger la page. Rien ne vaut un petit exemple pour bien comprendre. Créez une base de données nommée «ajaxdevbbs» et exécutez ce code SQL (ceci afin de créer et remplir les tables qui nous seront utiles pour l exemple) : Code : phpmyadmin SQL Dump version Serveur: localhost Généré le : Mer 01 Avril 2009 à 15:58 Version du serveur: Version de PHP: SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO"; Base de données: `ajaxdevbbs` Structure de la table `doc` CREATE TABLE `doc` ( `id` int(2) NOT NULL auto_increment, `id_rub` int(2) NOT NULL, `doc` varchar(100) NOT NULL, `url` varchar(150) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=21 ; Contenu de la table `doc` INSERT INTO `doc` (`id`, `id_rub`, `doc`, `url`) VALUES (1, 1, 'Du bon usage de la Piraterie.pdf', 'ftp://hackbbs.org/u.c.h- Publications/Du%20bon%20usage%20de%20la%20Piraterie.pdf'), (2, 1, 'L''Ethique Hacker.pdf', 'ftp://hackbbs.org/u.c.h- 10

11 Publications/L%27Ethique%20Hacker.pdf'), (3, 1, 'Le Chemin vers Hackerdom.pdf', 'ftp://hackbbs.org/u.c.h- Publications/Le%20Chemin%20vers%20Hackerdom.pdf'), (4, 1, 'Les Lois de Murphy.pdf', 'ftp://hackbbs.org/u.c.h- Publications/Les%20Lois%20de%20Murphy.pdf'), (5, 1, 'Libre comme dans Liberte.pdf', 'ftp://hackbbs.org/u.c.h- Publications/Libre%20comme%20dans%20Liberte.pdf'), (6, 1, 'Un Manifeste Hacker.pdf', 'ftp://hackbbs.org/u.c.h- Publications/Un%20Manifeste%20Hacker.pdf'), (7, 2, 'Cours Algorithmie et C BTS IRIS.rar', 'ftp://hackbbs.org/documentation%20c/cours%20algorithmie%20et%20c%20bts%20iris.rar'), (8, 2, 'Initiation au langage C.pdf', 'ftp://hackbbs.org/documentation%20c/initiation%20au%20langage%20c.pdf'), (9, 2, 'O''Reilly - The C Programming Language.pdf', 'ftp://hackbbs.org/documentation%20c/o%27reilly%20- %20The%20C%20Programming%20Language.pdf'), (10, 3, 'Les Bases du Langage C# (Cours Hackbbs - vodkanux)', 'ftp://hackbbs.org/documentation%20c%23/les%20bases%20du%20langage%20c%23%20(cou rs%20hackbbs%20-%20vodkanux).doc'), (11, 3, 'O''Reilly - Programming C#.pdf', 'ftp://hackbbs.org/documentation%20c%23/o%27reilly%20-%20programming%20c%23.pdf'), (12, 4, 'Java 2 - The Complete Reference - Osborne Mcgraw-Hill.pdf', 'ftp://hackbbs.org/documentation%20java/java%202%20- %20The%20Complete%20Reference%20-%20Osborne%20Mcgraw-Hill.pdf'), (13, 5, 'Debian.GNU-Linux.Bible.pdf', 'ftp://hackbbs.org/documentation%20linux/debian.gnu- Linux.Bible.pdf'), (14, 5, 'Firewall_GNU_Linux.pdf', 'ftp://hackbbs.org/documentation%20linux/firewall_gnu_linux.pdf'), (15, 5, 'GCC The Complete Guide Reference.pdf', 'ftp://hackbbs.org/documentation%20linux/gcc%20the%20complete%20guide%20reference. pdf'), (16, 5, 'Linux and Unix Commands.pdf', 'ftp://hackbbs.org/documentation%20linux/linux%20and%20unix%20commands.pdf'), (17, 5, 'M?mo Administrateur.pdf', 'ftp://hackbbs.org/documentation%20linux/m%c3%83%c2%a9mo%20administrateur.pdf'), (18, 5, 'M?mo Shell.pdf', 'ftp://hackbbs.org/documentation%20linux/m%c3%83%c2%a9mo%20shell.pdf'), (19, 6, 'Advanced_Python_programming.pdf', 'ftp://hackbbs.org/documentation%20python/advanced_python_programming.pdf'), (20, 6, 'Python.pdf', 'ftp://hackbbs.org/documentation%20python/python.pdf'); Structure de la table `rubrique` CREATE TABLE `rubrique` ( `id` int(2) NOT NULL auto_increment, `rub` varchar(30) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=7 ; 11

12 Contenu de la table `rubrique` INSERT INTO `rubrique` (`id`, `rub`) VALUES (1, 'U.C.H-Publications'), (2, 'Documentation C'), (3, 'Documentation C#'), (4, 'Documentation Java'), (5, 'Documentation Linux'), (6, 'Documentation Python'); Nous avons 2 tables dans notre base de données, une nommée «rubrique» contenant les différentes rubriques des documentations HackBBS (ceci n est qu un exemple, toutes les docs du FTP d HackBBS ne sont pas dispos dans la bdd), et une autre table nommée «doc» contenant les différentes docs avec l id de leur rubrique respective. Table «rub» : Table «doc» : Le but de cet exemple, est de créer une liste liée, c'est-à-dire que l on aura deux listbox, une pour les rubriques et une autre pour les docs, et qu en fonction du choix que l ont va faire sur la listbox «rubrique», la listbox «Docs» se mette à jour avec les documentations qui correspondent avec la rubrique sélectionnée. Pour cela, le script PHP qui sera exécuté via AJAX devra effectuer une requête sur la base de données afin de mettre à jour la deuxième listbox. 12

13 Voici le code de l index.php : index.php <html> <head> <title>tuto AJAX [DevBBS]</title> <script type='text/javascript'> function getxhr(){ var xhr = null; if(window.xmlhttprequest) // Firefox et autres xhr = new XMLHttpRequest(); else if(window.activexobject){ // Internet Explorer try { xhr = new ActiveXObject("Msxml2.XMLHTTP"); catch (e) { xhr = new ActiveXObject("Microsoft.XMLHTTP"); else { // XMLHttpRequest non supporté par le navigateur alert("votre navigateur ne supporte pas les objets XMLHTTPRequest..."); xhr = false; return xhr; /** * Méthode qui sera appelée sur le click du bouton */ function appel_ajax(){ var xhr = getxhr(); // On défini ce qu'on va faire quand on aura la réponse xhr.onreadystatechange = function(){ // On ne fait quelque chose que si on a tout reçu et que le serveur est ok if(xhr.readystate == 4 && xhr.status == 200){ var leselect = xhr.responsetext; // On se sert de innerhtml pour rajouter les options a la liste document.getelementbyid('docs').innerhtml = leselect; // requête par méthode POST xhr.open("post","ajax.php",true); // ne pas oublier ça pour le post xhr.setrequestheader('content-type','application/x-www-form-urlencoded'); // ne pas oublier de poster les arguments // ici, l'id de l'auteur sel = document.getelementbyid('rubrique'); id = sel.options[sel.selectedindex].value; xhr.send("id="+id); </script> 13

14 </head> <body> <form action="ajax.php" method="post"> <fieldset> <legend>docs HackBBS</legend> <label>rubrique</label> <select name="rubrique" id="rubrique" onchange="appel_ajax()"> <option value="-1">aucun</option> <?php mysql_connect("localhost","user","pass"); mysql_select_db("ajaxdevbbs"); $res = mysql_query("select * FROM rubrique ORDER BY rub"); while($data = mysql_fetch_assoc($res)){ echo "<option value='".$data["id"]."'>".$data["rub"]."<br>";?> </select> <label>docs</label> <div id='docs' style='display:inline'> <select name='docs'> <option value='-1'>choisir un auteur</option> </select> </div> </fieldset> </form> </body> </html> J ai surligné les éléments importants dans ce code, afin que la mise à jour puisse se faire. - Tout d abord en rouge, est représenté l id de la <div> qui contient la listbox (<select>) qui sera mis à jour à chaque modification de la première listbox. Cette div est très importante, car lorsque AJAX sera exécuté, elle sera remplacé par le résultat obtenue de notre script PHP. - L évènement JavaScript utilisé est de couleur bleu, onchange nous permettra d appeler AJAX à chaque changement de rubrique dans la première listbox. - En vert sont les infos à changer en fonction de votre serveur de bases de données. - En orange sont les lignes qui récupèrent la valeur de la première listbox (l id de la rubrique) puis la passe en paramètre à notre script PHP via la méthode POST. Nous allons voir maintenant notre script PHP : ajax.php <?php if((isset($_post["go_to_ftp_hbbs"]))&&isset($_post["docs"])) header("location:".$_post["docs"]); echo "<select name='docs'>"; if(isset($_post["id"])){ 14

15 mysql_connect("localhost","user","pass"); mysql_select_db("ajaxdevbbs"); $res = mysql_query("select id,doc,url FROM doc WHERE id_rub=".$_post["id"]." ORDER BY doc"); while($data = mysql_fetch_assoc($res)){ echo "<option value='".$data["url"]."'>".$data["doc"]."</option>"; echo "</select> <input type='submit' name='go_to_ftp_hbbs' value='ftp HackBBS'>";?> Le script PHP se contente en fait de récupérer le paramètre passé en POST par AJAX, c'est-à-dire l id de la rubrique sélectionné, et envoie une requête afin de récupérer les documentations correspondantes à la rubrique. Une fois ce script exécuté, le contenue de notre <div> dans le fichier index.php est remplacé par le contenu de ajax.php, c'est-à-dire d une listbox contenant les docs, ainsi qu un bouton nous dirigeant vers le FTP d HackBBS (ça c était pour le fun ^^). Voici en image ce que ça donne : Et tout cela. sans rechargement de page. 15

16 VIII- Conclusion L utilisation de XmlHttpRequest est maintenant beaucoup utilisé dans le Web2.0, ne serait ce que pour son interactivité et son gain de temps, en effet, effectuer des tests lors de la saisie d informations dans un formulaire sans pour autant recharger la page pour effectuer une requête SQL est très pratique. Par exemple, lorsqu on choisit un pseudo sur certain site, celui-ci nous informe de sa disponibilité au fur et à mesure de sa saisie, ce qui est beaucoup plus pratique et agréable pour l utilisateur. Petit rappel avec les requêtes synchrones, l utilisation synchrone risque de figer la page le temps que le script PHP s exécute, ce qui peut avoir un résultat inattendu sur votre site. Cours / Tuto écris pour la communauté DevBBS by Sliim Document libre! 16

DOM - Document Object Model

DOM - Document Object Model DOM - Document Object Model 1 But de DOM Interfacer les langages de programmation avec les documents XML en les associant avec un modèle orienté objet DOM permet aux programmes et scripts : d'accéder et

Plus en détail

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

Modélisation PHP Orientée Objet pour les Projets Modèle MVC (Modèle Vue Contrôleur) Mini Framework Modélisation PHP Orientée Objet pour les Projets Modèle MVC (Modèle Vue Contrôleur) Mini Framework L'objectif de ce document est de poser des bases de réflexion sur la modélisation d'un projet réalisé

Plus en détail

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)

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) PHP et mysql php_mysql PHP et mysql Code: php_mysql Originaux url: http://tecfa.unige.ch/guides/tie/html/php-mysql/php-mysql.html url: http://tecfa.unige.ch/guides/tie/pdf/files/php-mysql.pdf Auteurs et

Plus en détail

Stockage du fichier dans une table mysql:

Stockage du fichier dans une table mysql: Stockage de fichiers dans des tables MYSQL avec PHP Rédacteur: Alain Messin CNRS UMS 2202 Admin06 30/06/2006 Le but de ce document est de donner les principes de manipulation de fichiers dans une table

Plus en détail

PHP 5. La base de données MySql. A. Belaïd 1

PHP 5. La base de données MySql. A. Belaïd 1 PHP 5 La base de données MySql A. Belaïd 1 Base de données C est quoi une base de données? Une base de données contient une ou plusieurs tables, chaque table ayant un ou plusieurs enregistrements Exemple

Plus en détail

TP JAVASCRIPT OMI4 TP5 SRC1 2011-2012

TP JAVASCRIPT OMI4 TP5 SRC1 2011-2012 TP JAVASCRIPT OMI4 TP5 SRC1 2011-2012 FORMULAIRE DE CONTACT POUR PORTFOLIO PRINCIPE GENERAL Nous souhaitons réaliser un formulaire de contact comprenant les champs suivants : NOM PRENOM ADRESSE MAIL MESSAGE

Plus en détail

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

Module Com231A - Web et Bases de Données Notion 5 : Formulaires et utilisation des Bases de Données avec PHP Module Com231A - Web et Bases de Données Notion 5 : Formulaires et utilisation des Bases de Données avec PHP Au cours de ce TP, vous allez voir comment PHP permet aux utilisateurs, une interaction avec

Plus en détail

PHP et les Bases de données - Généralités

PHP et les Bases de données - Généralités PHP et les Bases de données - Généralités Conception d une base de données Méthodes utilisées : MERISE, UML Modèle conceptuel des données MCD, Modèle logique MLD, Modèle Physique MPD. Ces aspects seront

Plus en détail

Pratique et administration des systèmes

Pratique et administration des systèmes Université Louis Pasteur Licence Informatique (L2) UFR de Mathématiques et Informatique Année 2007/2008 1 But du TP Pratique et administration des systèmes TP10 : Technologie LAMP Le but de ce TP est de

Plus en détail

CREATION WEB DYNAMIQUE

CREATION WEB DYNAMIQUE CREATION WEB DYNAMIQUE IV ) MySQL IV-1 ) Introduction MYSQL dérive directement de SQL (Structured Query Language) qui est un langage de requêtes vers les bases de données relationnelles. Le serveur de

Plus en détail

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

Principales failles de sécurité des applications Web Principes, parades et bonnes pratiques de développement Guillaume HARRY l Contenu sous licence Creative Commons CC-BY-NC-ND Principales failles de sécurité des applications Web Principes, parades et bonnes pratiques de développement P. 2 1. Introduction 2.

Plus en détail

www.evogue.fr SUPPORT DE COURS / PHP PARTIE 3

www.evogue.fr SUPPORT DE COURS / PHP PARTIE 3 L i a m T A R D I E U www.evogue.fr SUPPORT DE COURS / PHP PARTIE 3 Sommaire Sommaire... 2 Eléments initiaux... 3 Base de données... 3 Tables... 4 membres... 4 commandes... 4 articles... 4 details_commandes...

Plus en détail

Programmation Web. Madalina Croitoru IUT Montpellier

Programmation Web. Madalina Croitoru IUT Montpellier Programmation Web Madalina Croitoru IUT Montpellier Organisation du cours 4 semaines 4 ½ h / semaine: 2heures cours 3 ½ heures TP Notation: continue interrogation cours + rendu à la fin de chaque séance

Plus en détail

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

NFA016 : Introduction. Pour naviguer sur le Web, il faut : Naviguer: dialoguer avec un serveur web NFA016 : Introduction O. Pons, S. Rosmorduc Conservatoire National des Arts & Métiers Pour naviguer sur le Web, il faut : 1. Une connexion au réseau Réseau Connexion physique (câbles,sans fils, ) à des

Plus en détail

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

Serveur d'application Client HTML/JS. Apache Thrift Bootcamp Serveur d'application Client HTML/JS Apache Thrift Bootcamp Pré-requis La liste ci-dessous de logiciels doit être installée et opérationnelle sur la machine des participants : Compilateur thrift http://thrift.apache.org/

Plus en détail

SYSTÈMES D INFORMATIONS

SYSTÈMES D INFORMATIONS SYSTÈMES D INFORMATIONS Développement Modx Les systèmes de gestion de contenu Les Content Management Système (CMS) servent à simplifier le développement de sites web ainsi que la mise à jour des contenus.

Plus en détail

Paginer les données côté serveur, mettre en cache côté client

Paginer les données côté serveur, mettre en cache côté client Paginer les données côté serveur, mettre en cache côté client Vous voulez sélectionner des lignes dans une table, mais celle-ci comporte trop de lignes pour qu il soit réaliste de les ramener en une seule

Plus en détail

Installation d'un serveur FTP géré par une base de données MySQL

Installation d'un serveur FTP géré par une base de données MySQL BTS INFORMATIQUE DE GESTION Option Administrateur de réseaux développement d applications COMPTE-RENDU D ACTIVITE ACTIVITE N 2 Nom et Prénom : Casanova Grégory Identification (objectif) de l activité Installation

Plus en détail

Editer un script de configuration automatique du proxy

Editer un script de configuration automatique du proxy Editer un script de configuration automatique du proxy INTRODUCTION... 2 AVANTAGE D UN SCRIPT DE CONFIGURATION... 2 SYNTAXE DU SCRIPT DE CONFIGURATION AUTOMATIQUE... 2 MISE A DISPOSITION DU SCRIPT... 4

Plus en détail

Encryptions, compression et partitionnement des données

Encryptions, compression et partitionnement des données Encryptions, compression et partitionnement des données Version 1.0 Grégory CASANOVA 2 Compression, encryption et partitionnement des données Sommaire 1 Introduction... 3 2 Encryption transparente des

Plus en détail

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

Les sites Internet dynamiques. contact : Patrick VINCENT pvincent@erasme.org Les sites Internet dynamiques contact : Patrick VINCENT pvincent@erasme.org Qu est-ce qu un site Web? ensemble de pages multimédia (texte, images, son, vidéo, ) organisées autour d une page d accueil et

Plus en détail

Formulaire pour envoyer un mail

Formulaire pour envoyer un mail Formulaire pour envoyer un mail AVERTISSEMENT : Ce tuto est une compilation de plusieurs sources trouvées sur internet, dont les références sont données à la fin de cet article. Le but de ce tutoriel n'est

Plus en détail

Création et Gestion des tables

Création et Gestion des tables Création et Gestion des tables Version 1.0 Z Grégory CASANOVA 2 Sommaire 1 Introduction... 3 2 Pré-requis... 4 3 Les tables... 5 3.1 Les types de données... 5 3.1.1 Les types de données Sql Server... 5

Plus en détail

Module BD et sites WEB

Module BD et sites WEB Module BD et sites WEB Cours 8 Bases de données et Web Anne Doucet Anne.Doucet@lip6.fr 1 Le Web Architecture Architectures Web Client/serveur 3-tiers Serveurs d applications Web et BD Couplage HTML-BD

Plus en détail

Mysql avec EasyPhp. 1 er mars 2006

Mysql avec EasyPhp. 1 er mars 2006 Mysql avec EasyPhp 1 er mars 2006 Introduction MYSQL dérive directement de SQL (Structured Query Language) qui est un langage de requètes vers les bases de données relationnelles. Il en reprend la syntaxe

Plus en détail

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

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau) CS WEB Ch 1 Introduction I. INTRODUCTION... 1 A. INTERNET INTERCONNEXION DE RESEAUX... 1 B. LE «WEB» LA TOILE, INTERCONNEXION DE SITES WEB... 2 C. L URL : LOCALISER DES RESSOURCES SUR L INTERNET... 2 D.

Plus en détail

Création d'un site dynamique en PHP avec Dreamweaver et MySQL

Création d'un site dynamique en PHP avec Dreamweaver et MySQL Création d'un site dynamique en PHP avec Dreamweaver et MySQL 1. Création et configuration du site 1.1. Configuration de Dreamweaver Avant de commencer, il est nécessaire de connaître l'emplacement du

Plus en détail

ISC21-1 --- Système d Information Architecture et Administration d un SGBD Compléments SQL

ISC21-1 --- Système d Information Architecture et Administration d un SGBD Compléments SQL ISC21-1 --- Système d Information Architecture et Administration d un SGBD Compléments SQL Jean-Marie Pécatte jean-marie.pecatte@iut-tlse3.fr 16 novembre 2006 ISIS - Jean-Marie PECATTE 1 Valeur de clé

Plus en détail

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

Sécurité des sites Web Pas un cours un recueil du net. INF340 Jean-François Berdjugin Sécurité des sites Web Pas un cours un recueil du net INF340 Jean-François Berdjugin Vulnérabilité Définition (wikipédia) : Dans le domaine de la sécurité informatique, une vulnérabilité est une faiblesse

Plus en détail

PDO : PHP Data Object 1/13

PDO : PHP Data Object 1/13 PDO : PHP Data Object 1/13 Tous ne sont que des extensions... Les fonstions mysql_* : API mysql Les fonctions mysqli_* aussi Il en est de même pour PDO PDO (avec le pilote PDO MySQL Driver et Extension

Plus en détail

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

Dans l'article précédent, vous avez appris Pour les débutants Les différents formats de sortie proposés par PHPExcel La bibliothèque orientée objet PHPExcel permet de lire et créer des fichiers pour tableurs. Dans cette série d articles, vous apprendrez

Plus en détail

Attaques applicatives

Attaques applicatives Attaques applicatives Attaques applicatives Exploitation d une mauvaise programmation des applications Ne touche pas le serveur lui-même mais son utilisation/ configuration Surtout populaire pour les sites

Plus en détail

Licence de MIDO - 3ème année Spécialités Informatique et Mathématiques Appliquées

Licence de MIDO - 3ème année Spécialités Informatique et Mathématiques Appliquées Licence de MIDO - 3ème année Spécialités Informatique et Mathématiques Appliquées ANNEE 2014 / 2015 Désignation de l enseignement : Bases de données Nom du document : TP SQL sous PostgreSQL Rédacteur :

Plus en détail

Sécurité des applications web. Daniel Boteanu

Sécurité des applications web. Daniel Boteanu I F8420: Éléments de Sécurité des applications web Daniel Boteanu Architecture des applications web Client légitime Internet HTTP 浀 HTML Server Web 2 Architecture des applications web Client légitime Internet

Plus en détail

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

Cette application développée en C# va récupérer un certain nombre d informations en ligne fournies par la ville de Paris : Développement d un client REST, l application Vélib 1. Présentation L application présentée permet de visualiser les disponibilités des vélos et des emplacements de parking à la disposition des parisiens

Plus en détail

I. MySQL : Serveur et SGBD

I. MySQL : Serveur et SGBD Le Système de Gestion de Base de Données MySQL I. MySQL : Serveur et SGBD Menu I. MySQL : Serveur et SGBG II. Création d'une base de données avec MySQL MySQL est un système de gestion et conception de

Plus en détail

Comment mettre en ligne un site WordPress local

Comment mettre en ligne un site WordPress local Comment mettre en ligne un site WordPress local Vous avez bossé votre site en local et vous voulez maintenant savoir comment mettre en ligne votre site pour la première fois? Je vous propose ce guide en

Plus en détail

RÉALISATION D UN SITE DE RENCONTRE

RÉALISATION D UN SITE DE RENCONTRE RÉALISATION D UN SITE DE RENCONTRE Par Mathieu COUPE, Charlène DOUDOU et Stéphanie RANDRIANARIMANA Sous la coordination des professeurs d ISN du lycée Aristide Briand : Jérôme CANTALOUBE, Laurent BERNARD

Plus en détail

Olivier Mondet http://unidentified-one.net

Olivier Mondet http://unidentified-one.net T-GSI Ch.4 Le Langage SQL LDD, LCD Cet exercice guidé reprend le plan suivis lors de l intervention de formation faite pour l académie de Versailles. L objectif principal visait en la présentation du langage

Plus en détail

Ajax, RIA et HTML5. 9.1 Prise en charge d Ajax

Ajax, RIA et HTML5. 9.1 Prise en charge d Ajax 9 Ajax, RIA et HTML5 Au soaire de ce chapitre UU Prise en charge d Ajax UU Bibliothèques JavaScript UU Extensions CSS de WebKit UU Applications Internet riches mobiles UU HTML5 Ajax, HTML5 et RIA, coent

Plus en détail

1 Position du problème

1 Position du problème Licence Science et Technologies - INF245 Examen session 1 - mai 2012 Durée : 2 heures Documents non autorisés Le barème est donné à titre indicatif 1 Position du problème Le Club Universitaire de Vélo

Plus en détail

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

Démarrer avec Ajax et le php: exemple d'application Démarrer avec Ajax et le php: exemple d'application Rédacteur: Alain Messin (Alain.Messin arobas obs-azur.fr) CNRS UMS 2202 Admin06 24/09/2007 Le but de ce document est de permettre de démarrer dans le

Plus en détail

Le stockage local de données en HTML5

Le stockage local de données en HTML5 Le stockage local HTML5, pourquoi faire? Dans une optique de réduction des couts de maintenance, de déploiement, beaucoup d'entreprises ont fait le choix de migrer leurs applicatifs (comptables, commerciales,

Plus en détail

FAIRE UN PAIEMENT TIPI

FAIRE UN PAIEMENT TIPI FAIRE UN PAIEMENT TIPI I. Accès au site II. Je n ai pas de compte sur ce site 1. Indiquer une adresse email valide a. J ai une adresse email b. Je n ai pas d adresse email 2. Indiquer les informations

Plus en détail

PHP 4 PARTIE : BASE DE DONNEES

PHP 4 PARTIE : BASE DE DONNEES PHP 4 PARTIE : BASE DE DONNEES 1. Introduction 2. Présentation de MySQL 3. Principe 4. Connexion 5. Interrogation 6. Extraction des données 7. Fonctions de services 8. Traitement des erreurs 9. Travaux

Plus en détail

Hébergement de site web Damien Nouvel

Hébergement de site web Damien Nouvel Hébergement de site web Plan L'hébergeur Le serveur web Apache Sites dynamiques 2 / 27 Plan L'hébergeur Le serveur web Apache Sites dynamiques 3 / 27 L'hébergeur L'hébergeur sous-traite l'architecture

Plus en détail

Thème : Création, Hébergement et référencement d un site Web

Thème : Création, Hébergement et référencement d un site Web Formation au profit des enseignants de l'université Ibn Zohr Thème : Création, Hébergement et référencement d un site Web Omar El Kharki & Jamila Mechbouh http://perso.menara.ma/~elkharki/ Ou bien http://www.elkharki.africa-web.org/

Plus en détail

Plateforme PAYZEN. Définition de Web-services

Plateforme PAYZEN. Définition de Web-services Plateforme PAYZEN Définition de Web-services Ordre de paiement Version 1.1 Rédaction, Vérification, Approbation Rédaction Vérification Approbation Nom Date/Visa Nom Date/Visa Nom Date/Visa Lyra-Network

Plus en détail

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

FTP : File TRansfer Protocol => permets d envoyer des gros fichiers sur un serveur (ou de télécharger depuis le serveur) Publication par FTP FTP : File TRansfer Protocol => permets d envoyer des gros fichiers sur un serveur (ou de télécharger depuis le serveur) Logiciels FTP nombreux (FileZilla, CuteFTP, WinSCP, FTP Expert).

Plus en détail

Gestion Electronique de Document (ECM/GED)

Gestion Electronique de Document (ECM/GED) Gestion Electronique de Document (ECM/GED) Analyse de l existant Découpage modulaire La gestion électronique de documents repose sur un ensemble de deux modules conjoints, au sein de la famille «ecm» :

Plus en détail

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

Master1 ère année. Réseaux avancés I. TP nº5 filière ISICG Master1 ère année Réseaux avancés I TP nº5 filière ISICG Utilisation de la microplateforme Bottle et du framework AngularJS La «micro web-framework» Bottle pour Python Les principales caractèristiques

Plus en détail

Attaques de type. Brandon Petty

Attaques de type. Brandon Petty Attaques de type injection HTML Brandon Petty Article publié dans le numéro 1/2004 du magazine Hakin9 Tous droits reservés. La copie et la diffusion de l'article sont admises à condition de garder sa forme

Plus en détail

1. Base de données SQLite

1. Base de données SQLite Dans ce TP, nous allons voir comment créer et utiliser une base de données SQL locale pour stocker les informations. La semaine prochaine, ça sera avec un WebService. On repart de l application AvosAvis

Plus en détail

Gestion du cache dans les applications ASP.NET

Gestion du cache dans les applications ASP.NET Gestion du cache dans les applications ASP.NET Version 1.0 James RAVAILLE http://blogs.dotnet france.com/jamesr 2 Gestion du cache dans les applications ASP.NET v 1.0 03/01/09 Sommaire 1 Introduction...

Plus en détail

SQL Historique 1982 1986 1992

SQL Historique 1982 1986 1992 SQL Historique 1950-1960: gestion par simple fichier texte 1960: COBOL (début de notion de base de données) 1968: premier produit de sgbdr structuré (IBM -> IDMS) 1970-74: élaboration de l'outil d'analyse

Plus en détail

Projet en nouvelles technologies de l information et de la communication

Projet en nouvelles technologies de l information et de la communication Projet en nouvelles technologies de l information et de la communication Site Web universitaire du Prof. Jacques Moeschler. Nono Steeve Semestre de printemps 2013 Sous la direction du Prof Luka Nerima

Plus en détail

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

WEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES WEB & DÉVELOPPEMENT LES BASES DU WEB HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES LE LANGAGE HTML STRUCTURE D UNE PAGE En-tête et corps Syntaxe INSÉRER DES CONTENUS Texte : formatage (titre,

Plus en détail

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

PLUGINS Guide du Développeur STEPHANE FERRARI. P l u X m l 5.4 PLUGINS Guide du Développeur STEPHANE FERRARI P l u X m l 5.4 Table des matières Présentation de PluXml...5 Principales caractéristiques...5 Pré-requis...6 Procédure d'installation...6 Procédure de mise

Plus en détail

CRÉER, ROUTER ET GÉRER UNE NEWSLETTER, UN E-MAILING

CRÉER, ROUTER ET GÉRER UNE NEWSLETTER, UN E-MAILING CRÉER, ROUTER ET GÉRER UNE NEWSLETTER, UN E-MAILING Durée : 3J / 21H Formateur : Consultant expert en PAO et Web-marketing. Groupe de : 4 max Formation au web marketing Objectifs : Mettre en oeuvre des

Plus en détail

Mysql. Les requêtes préparées Prepared statements

Mysql. Les requêtes préparées Prepared statements Mysql Les requêtes préparées Prepared statements Introduction Les prepared statements côté serveur sont une des nouvelles fonctionnalités les plus intéressantes de MySQL 4.1 (récemment sorti en production

Plus en détail

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

Soon_AdvancedCache. Module Magento SOON. Rédacteur. Relecture & validation technique. Historique des révisions Module Magento SOON Soon_AdvancedCache Rédacteur Hervé G. Lead développeur Magento herve@agence-soon.fr AGENCE SOON 81 avenue du Bac 94210 LA VARENNE ST HILAIRE Tel : +33 (0)1 48 83 95 96 Fax : +33 (0)1

Plus en détail

Rapport de stage Nicolas PLAZE Licence Pro A2I. Rapport de Stage LICENCE PRO A2I. Société INFHOTIK. Nicolas PLAZE

Rapport de stage Nicolas PLAZE Licence Pro A2I. Rapport de Stage LICENCE PRO A2I. Société INFHOTIK. Nicolas PLAZE Rapport de Stage LICENCE PRO A2I Société INFHOTIK Nicolas PLAZE Année 2001-2002 1 I. L ENTREPRISE 1. Raison sociale 2. Activité 3. Personnel 4. L offre infhotik hôtel 5. Les projets SOMMAIRE II. OBJECTIFS

Plus en détail

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

INTRODUCTION A JAVA. Fichier en langage machine Exécutable INTRODUCTION A JAVA JAVA est un langage orienté-objet pur. Il ressemble beaucoup à C++ au niveau de la syntaxe. En revanche, ces deux langages sont très différents dans leur structure (organisation du

Plus en détail

Sommaire. I.1 : Alimentation à partir d un fichier Access (.mdb)...2

Sommaire. I.1 : Alimentation à partir d un fichier Access (.mdb)...2 Sommaire I. SCENARII DE TRAITEMENTS...2 I.1 : Alimentation à partir d un fichier Access (.mdb)...2 I.1 : Vérification de l intégrité des traitements SQL sur la pyramide des ages...3 I.2 : Vérification

Plus en détail

Comment Connecter une Base de Données MySQL via un Driver JDBC Avec OpenOffice.org

Comment Connecter une Base de Données MySQL via un Driver JDBC Avec OpenOffice.org Comment Connecter une Base de Données MySQL via un Driver JDBC Avec OpenOffice.org Diffusé par Le Projet Documentation OpenOffice.org OpenOffice.org Documentation Project How-To Table des matières 1. Introduction...3

Plus en détail

Objectifs du TP : Initiation à Access

Objectifs du TP : Initiation à Access Objectifs du TP : Initiation à Access I. Introduction Microsoft Access fait partie de l ensemble Microsoft Office. C est un SGBDR (système de gestion de bases de données relationnelles) présentant une

Plus en détail

Module pour la solution e-commerce Magento

Module pour la solution e-commerce Magento Module pour la solution e-commerce Magento sommaire 1. Introduction... 3 1.1. Objet du document... 3 1.2. Liste des documents de référence... 3 1.3. Avertissement... 3 1.4. Contacts... 3 1.5. Historique

Plus en détail

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.

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. ASTRIUM - Toulouse JEE Formation 2013 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. Figure 1 Architecture

Plus en détail

Serveur d Applications Web : WebObjects

Serveur d Applications Web : WebObjects Serveur d Applications Web : WebObjects Nicolas Roard 29 avril 2004 Table des matières 1 Introduction 1 2 Historique 1 2.1 Implémentation WebObjects....... 2 2.2 Différences et manques?......... 3 3 Principes

Plus en détail

Tous les autres noms de produits ou appellations sont des marques déposées ou des noms commerciaux appartenant à leurs propriétaires respectifs.

Tous les autres noms de produits ou appellations sont des marques déposées ou des noms commerciaux appartenant à leurs propriétaires respectifs. Connexion à 4D Server depuis une page ASP Par Noreddine MARGOUM, Technicien Contrôle Qualité, 4D S.A. Note technique 4D-200403-08-FR Version 1 Date 1 Mars 2004 Résumé Le propos de cette note technique

Plus en détail

Notes pour l utilisation d Expression Web

Notes pour l utilisation d Expression Web EICW Formation Webmaster Notes pour l utilisation d Expression Web G. Barmarin 2008-2009 1 /21 Table des matières 1 Introduction... 3 2 Installer Expression Web... 4 3 Explorer et personnaliser l interface

Plus en détail

NFA 008. Introduction à NoSQL et MongoDB 25/05/2013

NFA 008. Introduction à NoSQL et MongoDB 25/05/2013 NFA 008 Introduction à NoSQL et MongoDB 25/05/2013 1 NoSQL, c'est à dire? Les bases de données NoSQL restent des bases de données mais on met l'accent sur L'aspect NON-relationnel L'architecture distribuée

Plus en détail

Outil de démonstration : Application PassNFC

Outil de démonstration : Application PassNFC Outil de démonstration : Application PassNFC Utilisation dans le cadre de la formation Synerg ID uniquement Testé avec : Google Nexus / MIFARE Ultralight Contenu 1 Préambule... 2 2 Configuration requise...

Plus en détail

Notes de cours : bases de données distribuées et repliquées

Notes de cours : bases de données distribuées et repliquées Notes de cours : bases de données distribuées et repliquées Loïc Paulevé, Nassim Hadj-Rabia (2009), Pierre Levasseur (2008) Licence professionnelle SIL de Nantes, 2009, version 1 Ces notes ont été élaborées

Plus en détail

Classe ClInfoCGI. Fonctions membres principales. Gestion des erreurs

Classe ClInfoCGI. Fonctions membres principales. Gestion des erreurs Utilisation des classes de PourCGI par Michel Michaud, version 2002-11-23 Les fichiers PourCGI.h et PourCGI.cpp rendent disponibles deux classes et une fonction libre qui permettent de faire facilement

Plus en détail

Définition des Webservices Ordre de paiement par email. Version 1.0

Définition des Webservices Ordre de paiement par email. Version 1.0 Définition des Webservices Ordre de paiement par email Version 1.0 Rédaction, Vérification, Approbation Rédaction Vérification Approbation Nom Date/Visa Nom Date/Visa Nom Date/Visa Historique du document

Plus en détail

Comment créer son propre monitoring. (Version simple PHP)

Comment créer son propre monitoring. (Version simple PHP) Comment créer son propre monitoring. (Version simple PHP) TUTORIELS Louis Foraux DROID CENTER HTTP://DROID CENTER.TK Table des matières Présentation du projet... 2 Crédits... 2 Utilisation... 2 Infos Utiles...

Plus en détail

Document Object Model (DOM)

Document Object Model (DOM) Document Object Model (DOM) Jean-Claude Charr Maître de conférences IUT de Belfort Montbéliard Université de Franche Comté Description générale Définit un standard pour accéder aux documents structurés

Plus en détail

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

Démonstration de la mise en cache via HTML 5 sur iphone Last update: 2011/08/18 21:46 wiki:devmobile:webapp:html5:presentation Démonstration de la mise en cache via HTML 5 sur iphone Overview Parmi les nouveautés du HTML 5, l une d elles est très intéressent

Plus en détail

Formulaires et Compteurs

Formulaires et Compteurs Formulaires et Compteurs Création de formulaires et de compteurs avec extensions FrontPage ou ASP. INFORMATIONS CONNEXES Le but du présent manuel est de permettre à une personne familière d Internet de

Plus en détail

PHP CLÉS EN MAIN. 76 scripts efficaces pour enrichir vos sites web. par William Steinmetz et Brian Ward

PHP CLÉS EN MAIN. 76 scripts efficaces pour enrichir vos sites web. par William Steinmetz et Brian Ward PHP CLÉS EN MAIN 76 scripts efficaces pour enrichir vos sites web par William Steinmetz et Brian Ward TABLE DES MATIÈRES INTRODUCTION 1 1 TOUT CE QUE VOUS AVEZ TOUJOURS VOULU SAVOIR SUR LES SCRIPTS PHP

Plus en détail

RAPPORT AUDIT SEO. Élaboré à l'attention de : Monsieur Greber Élaboré par : Cédric Peinado

RAPPORT AUDIT SEO. Élaboré à l'attention de : Monsieur Greber Élaboré par : Cédric Peinado - RAPPORT AUDIT SEO Élaboré à l'attention de : Monsieur Greber Élaboré par : Cédric Peinado 17 septembre 2013 Table des matières Optimisation structurelle 2 Optimisation des standards, performances et

Plus en détail

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

La programmation orientée objet Gestion de Connexions HTTP Manipulation de fichiers Transmission des données PHP/MySQL. Le langage PHP (2) Le langage PHP (2) Walid Belkhir Université de Provence belkhir@cmi.univ-mrs.fr http://www.lif.univ-mrs.fr/ belkhir/ 1 / 54 1 La programmation orientée objet 2 Gestion de Connexions HTTP 3 Manipulation

Plus en détail

Optimiser pour les appareils mobiles

Optimiser pour les appareils mobiles chapitre 6 Optimiser pour les appareils mobiles 6.1 Créer un site adapté aux terminaux mobiles avec jquery Mobile... 217 6.2 Transformer son site mobile en application native grâce à PhoneGap:Build...

Plus en détail

Gestion d'un parc informatique avec OCS INVENTORY et GLPI

Gestion d'un parc informatique avec OCS INVENTORY et GLPI GSB Gestion d'un parc informatique avec OCS INVENTORY et GLPI Inventaire d'un parc informatique Suite à la multiplication des matériels et des logiciels dans les locaux de GSB, le service Gestion exprime

Plus en détail

Procédures Stockées WAVESOFT... 12 ws_sp_getidtable... 12. Exemple :... 12. ws_sp_getnextsouche... 12. Exemple :... 12

Procédures Stockées WAVESOFT... 12 ws_sp_getidtable... 12. Exemple :... 12. ws_sp_getnextsouche... 12. Exemple :... 12 Table des matières Les Triggers... 2 Syntaxe... 2 Explications... 2 Les évènements déclencheurs des triggers... 3 Les modes de comportements des triggers... 4 Les pseudo tables... 5 Exemple... 6 Les procédures

Plus en détail

Cours Bases de données 2ème année IUT

Cours Bases de données 2ème année IUT Cours Bases de données 2ème année IUT Cours Bilan : Des vues à PL/SQL corrigé Anne Vilnat http://www.limsi.fr/individu/anne/cours Plan 1 Cas exemple 2 Les tables... 3 Vues et index 4 Privilèges 5 Fonctions

Plus en détail

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

Introduction. PHP = Personal Home Pages ou PHP Hypertext Preprocessor. Langage de script interprété (non compilé) Introduction PHP = Personal Home Pages ou PHP Hypertext Preprocessor Langage de script interprété (non compilé) Plan Avantages Fonctionnement interne Bases du langage Formulaires Envoi d un email Avantages

Plus en détail

Auteur LARDOUX Guillaume Contact guillaume.lardoux@epitech.eu Année 2014 DEVELOPPEMENT MOBILE AVEC CORDOVA

Auteur LARDOUX Guillaume Contact guillaume.lardoux@epitech.eu Année 2014 DEVELOPPEMENT MOBILE AVEC CORDOVA Auteur LARDOUX Guillaume Contact guillaume.lardoux@epitech.eu Année 2014 DEVELOPPEMENT MOBILE AVEC CORDOVA Sommaire 1. Introduction 2. Installation 3. Fonctionnement 4. Développement 5. Démonstration 2

Plus en détail

GUIDE DE DEMARRAGE V1.02

GUIDE DE DEMARRAGE V1.02 SUPPORT FONCTIONNEL SFR Business Team SFR Suite Stockage Cloud GUIDE DE DEMARRAGE V1.02 Entité Nom Date(s) Propriétaire Rédacteur Vérificateur SFR SFR SFR SFR www.sfr.fr Page : 2/15 Table des matières

Plus en détail

Passerelle EnOcean IP avec services Cloud

Passerelle EnOcean IP avec services Cloud NanoSense 123 rue de Bellevue, 92100 Boulogne Billancourt France Tél : 33-(0) 1 41 41 00 02, fax : 33-(0) 1 41 41 06 72 www.nano-sense.com Passerelle EnOcean IP avec services Cloud Rev Date Modification

Plus en détail

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

API SMS CONSEIL HTTP V2.01. Sommaire. Documentation V1.0 au 21/05/2011 API SMS CONSEIL HTTP V2.01 Documentation V1.0 au 21/05/2011 L'utilisation de l'api SMS CONSEIL est réservée aux clients, membres du site SMS-CONSEIL.FR et doit se faire en accord avec nos conditions générales

Plus en détail

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

les techniques d'extraction, les formulaires et intégration dans un site WEB les techniques d'extraction, les formulaires et intégration dans un site WEB Edyta Bellouni MSHS-T, UMS838 Plan L extraction des données pour un site en ligne Architecture et techniques Les différents

Plus en détail

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

STID 2ème année : TP Web/PHP STID 2ème année : TP Web/PHP Plan de travail et aide mémoire jean.arnaud@inria.fr Ce document est composé de cinq parties : Un aide mémoire sur les aspects pratiques de la création de sites Une introduction

Plus en détail

Manuel d'installation

Manuel d'installation CyberMUT P@iement P@iement CIC P@iement OBC SERVICE SECURISE DE PAIEMENT INTERNET PAR CARTE BANCAIRE (Sécurisé par le protocole SSL) Manuel d'installation (Document 2/2) EURO Sp.Tech. 1.2.8 Octobre 2001

Plus en détail

Les BASES de DONNEES dans WampServer

Les BASES de DONNEES dans WampServer Les BASES de DONNEES dans WampServer 1 Définitions Générales Une base de données (BDD) permet d'enregistrer, de stocker, de ranger des données de façon organisée et hiérarchisée. SQL est le langage qui

Plus en détail

Vulnérabilités et sécurisation des applications Web

Vulnérabilités et sécurisation des applications Web OSSIR 09/09/2002 Vulnérabilités, attaques et sécurisation des applications Web Pourquoi les firewalls sont impuissants patrick.chambet@edelweb.fr http://www.edelweb.fr http://www.chambet.com Page 1 Planning

Plus en détail