AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite...

38
AJAX et PHP Achref El Mouelhi Docteur de l’universit ´ e d’Aix-Marseille Chercheur en programmation par contrainte (IA) Ing ´ enieur en g ´ enie logiciel [email protected] H & H: Research and Training 1 / 33

Transcript of AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite...

Page 1: AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite d’Aix-Marseille´ Chercheur en programmation par contrainte (IA) Ingenieur en g´

AJAX et PHP

Achref El Mouelhi

Docteur de l’universite d’Aix-MarseilleChercheur en programmation par contrainte (IA)

Ingenieur en genie logiciel

[email protected]

H & H: Research and Training 1 / 33

Page 2: AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite d’Aix-Marseille´ Chercheur en programmation par contrainte (IA) Ingenieur en g´

Plan

1 Introduction

2 AJAX avec JavaScript

3 Exemple

4 AJAX et jQuery

H & H: Research and Training 2 / 33

Page 3: AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite d’Aix-Marseille´ Chercheur en programmation par contrainte (IA) Ingenieur en g´

c© Achref EL MOUELHI c©

Introduction

PHP & AJAX

Definition et caracteristiques

a ete invente par Jesse James Garrett en 2005

n’est pas un langage de programmation, mais plutot unetechnologie

utilise l’objet non standard XMLHttpRequest pour echanger avecdes scripts situes cote serveur

permet d’echanger des informations sous format :

Textuel

XML

HTML

JSON

H & H: Research and Training 3 / 33

Page 4: AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite d’Aix-Marseille´ Chercheur en programmation par contrainte (IA) Ingenieur en g´

c© Achref EL MOUELHI c©

Introduction

PHP & AJAX

Avantages

faire des requetes vers le serveur d’une facon discrete : effectuela requete de facon asynchrone (en arriere plan de la page) :

sans perturber le flux normal de celle-ci

sans avoir a recharger la page

analyser et travailler avec des documents de plusieurs formatsXML, JSON...

Initialement, XML du XMLHttpRequest ou X d’AJAX designent leformat d’echange mais de nos jours on s’oriente plutot vers le formatJavaScript Object Notation (JSON).

H & H: Research and Training 4 / 33

Page 5: AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite d’Aix-Marseille´ Chercheur en programmation par contrainte (IA) Ingenieur en g´

c© Achref EL MOUELHI c©

Introduction

PHP & AJAX

Avantages

faire des requetes vers le serveur d’une facon discrete : effectuela requete de facon asynchrone (en arriere plan de la page) :

sans perturber le flux normal de celle-ci

sans avoir a recharger la page

analyser et travailler avec des documents de plusieurs formatsXML, JSON...

Initialement, XML du XMLHttpRequest ou X d’AJAX designent leformat d’echange mais de nos jours on s’oriente plutot vers le formatJavaScript Object Notation (JSON).

H & H: Research and Training 4 / 33

Page 6: AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite d’Aix-Marseille´ Chercheur en programmation par contrainte (IA) Ingenieur en g´

c© Achref EL MOUELHI c©

Introduction

PHP & AJAX

jQuery a simplifie l’ecriture d’AJAX

plus besoin de XMLHttpRequest et ses problemesd’incompatibilite (entre navigateurs) ou de sa complexite

en utilisant $.ajax() ou load()

H & H: Research and Training 5 / 33

Page 7: AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite d’Aix-Marseille´ Chercheur en programmation par contrainte (IA) Ingenieur en g´

c© Achref EL MOUELHI c©

AJAX avec JavaScript

PHP & AJAX

Etape a suivre

Creer une requete

Preciser ce qu’on fait a la reception d’une reponse

Lancer la requete

ouvrir

envoyer

H & H: Research and Training 6 / 33

Page 8: AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite d’Aix-Marseille´ Chercheur en programmation par contrainte (IA) Ingenieur en g´

c© Achref EL MOUELHI c©

AJAX avec JavaScript

PHP & AJAX

Un peu d’histoire

Les navigateurs Internet Explorer dont la version est < 7 utilisentActiveX, developpe par Microsoft, pour echanger avec leserveur

premiere version : var xhr = newActiveXObject("Microsoft.XMLHTTP");

deuxieme version : var xhr = newActiveXObject("Msxml2.XMLHTTP");

Les autres navigateurs (Safari, Firefox, Chrome...) utilisent :

var xhr = new XMLHttpRequest();

H & H: Research and Training 7 / 33

Page 9: AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite d’Aix-Marseille´ Chercheur en programmation par contrainte (IA) Ingenieur en g´

c© Achref EL MOUELHI c©

AJAX avec JavaScript

PHP & AJAXDefinir un objet compatible avec (tous) les navigateursfunction getXMLHttpRequest() {

var xhr = null;if (window.XMLHttpRequest || window.ActiveXObject) {

if (window.ActiveXObject) {try {

xhr = new ActiveXObject("Msxml2.XMLHTTP");}catch(e) {

xhr = new ActiveXObject("Microsoft.XMLHTTP");}

}else {

xhr = new XMLHttpRequest();}

}else {

alert("Navigateur incompatible avec XMLHTTPRequest");return null;

}return xhr;

}

H & H: Research and Training 8 / 33

Page 10: AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite d’Aix-Marseille´ Chercheur en programmation par contrainte (IA) Ingenieur en g´

c© Achref EL MOUELHI c©

AJAX avec JavaScript

PHP & AJAX

Preciser au serveur le nom de la fonction a executer a la reception d’unereponse

// Create a requestxhr = getXMLHttpRequest();// Specify the JavaScript function without () nor parametersxhr.onreadystatechange = nomFonction;

ou bien aussi

// Create a requestxhr = getXMLHttpRequest();// Specify the JavaScript function without () nor parametersxhr.onreadystatechange = function() {

// instructions of anonymous function};

H & H: Research and Training 9 / 33

Page 11: AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite d’Aix-Marseille´ Chercheur en programmation par contrainte (IA) Ingenieur en g´

c© Achref EL MOUELHI c©

AJAX avec JavaScript

PHP & AJAXPremiere etape : ouverture

xhr.open(’method’, ’URL’, bool);

Etapes a suivre

method : nom de la methode : GET, POST...

URL : URL de la page demandee

page statique : XML, txt...

page dynamique : PHP, JSP, ASP...

bool : TRUE pour dire que c’est asynchrone (l’execution de lafonction JavaScript se poursuivra en attendant l’arrivee de lareponse du serveur)

H & H: Research and Training 10 / 33

Page 12: AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite d’Aix-Marseille´ Chercheur en programmation par contrainte (IA) Ingenieur en g´

c© Achref EL MOUELHI c©

AJAX avec JavaScript

PHP & AJAX

Exemple :

xhr.open("GET", "page.php", true);

ou en utilisant l’url d’une servlet java

xhr.open("GET", "SearchPersonne", true);

H & H: Research and Training 11 / 33

Page 13: AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite d’Aix-Marseille´ Chercheur en programmation par contrainte (IA) Ingenieur en g´

c© Achref EL MOUELHI c©

AJAX avec JavaScript

PHP & AJAX

Cas particulier de la methode POST : il faut changer l’entete de larequete avant d’envoyer des donnees issues d’un formulaire

xhr.open("POST", "page.php", true);xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded

");xhr.send();

H & H: Research and Training 12 / 33

Page 14: AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite d’Aix-Marseille´ Chercheur en programmation par contrainte (IA) Ingenieur en g´

c© Achref EL MOUELHI c©

AJAX avec JavaScript

PHP & AJAX

Deuxieme etape : envoi

xhr.send();

H & H: Research and Training 13 / 33

Page 15: AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite d’Aix-Marseille´ Chercheur en programmation par contrainte (IA) Ingenieur en g´

c© Achref EL MOUELHI c©

AJAX avec JavaScript

PHP & AJAXPour envoyer des parametres avec POST :

xhr.open("POST", "page.php", true);xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded

");xhr.send("nomVar1=val1&...&nomVarN=valN");

Pour envoyer des parametres avec GET :xhr.open("GET", "page.php?nomVar1=val1&...&nomVarN=valN", true);xhr.send();

Proteger les caracteres speciaux avant envoi :var var1 = encodeURIComponent("variable contenant espaces");xhr.open("GET", "page.php?var1=" + var1, true);xhr.send();

H & H: Research and Training 14 / 33

Page 16: AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite d’Aix-Marseille´ Chercheur en programmation par contrainte (IA) Ingenieur en g´

c© Achref EL MOUELHI c©

AJAX avec JavaScript

PHP & AJAXA la reception d’une reponse, on appelle une fonction pour la traiter

xhr.onreadystatechange = nomFonction;

Dans la fonction JavaScript, Il faut verifier l’etat de la requete :

if (httpRequest.readyState == value){...}

Valeur de readyState

0 : requete non initialisee

1 : requete initialisee mais pas encore envoyee

2 : requete recue

3 : requete encours de traitement

4 : traitement de requete termine et reponse prete

H & H: Research and Training 15 / 33

Page 17: AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite d’Aix-Marseille´ Chercheur en programmation par contrainte (IA) Ingenieur en g´

c© Achref EL MOUELHI c©

AJAX avec JavaScript

PHP & AJAX

Il faut aussi verifier le code d’etat de la reponse HTTP du serveur :

if (httpRequest.status == value){...}

Plusieurs valeurs possibles de status

200 : OK

400 : Bad Request

401 : Unauthorized

404 : not found

500 : Internal Server Error

la liste complete :https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html

H & H: Research and Training 16 / 33

Page 18: AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite d’Aix-Marseille´ Chercheur en programmation par contrainte (IA) Ingenieur en g´

c© Achref EL MOUELHI c©

AJAX avec JavaScript

PHP & AJAX

Les methodes

responseText : pour recuperer les donnees d’une reponse sousforme de chaıne de caracteres

responseXML : pour recuperer les donnees d’une reponse sousforme d’un objet XML que nous pouvons parcourir a l’aide desfonctions DOM de JavaScript (getElementById()...)

H & H: Research and Training 17 / 33

Page 19: AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite d’Aix-Marseille´ Chercheur en programmation par contrainte (IA) Ingenieur en g´

c© Achref EL MOUELHI c©

Exemple

PHP & AJAX

Exemple

On veut indiquer a l’utilisateur si le nom qu’il vient de saisir estvalide ou pas.

En effet, pendant qu’il saisit une valeur dans le champ nom, on luiaffiche un message pour lui dire si ce dernier existe (ou pas) dansla base de donnees.

H & H: Research and Training 18 / 33

Page 20: AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite d’Aix-Marseille´ Chercheur en programmation par contrainte (IA) Ingenieur en g´

c© Achref EL MOUELHI c©

Exemple

PHP & AJAXContenu de page1.php

<!DOCTYPE html><html><head><title>Premiere page</title>

</head><body><div>

Nom a chercher : <input type="text" id="txt" oninput="findNom(this.value)">

<span id="resultat"></span>

</div><script src="script.js"></script>

</body></html>

H & H: Research and Training 19 / 33

Page 21: AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite d’Aix-Marseille´ Chercheur en programmation par contrainte (IA) Ingenieur en g´

c© Achref EL MOUELHI c©

Exemple

PHP & AJAX

Contenu de script.js

// n’oublions pas de copier la fonction XMLHttpRequest

function findNom(str) {let resultat = document.getElementById("resultat");if (str.length == 0) {resultat.innerHTML = "";

} else {let xhr = new XMLHttpRequest();xhr.onreadystatechange = function() {if (xhr.readyState == 4 && xhr.status == 200) {

resultat.innerHTML = xhr.responseText;}

}xhr.open("GET", "page2.php?name=" + str, true);xhr.send();

}}

H & H: Research and Training 20 / 33

Page 22: AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite d’Aix-Marseille´ Chercheur en programmation par contrainte (IA) Ingenieur en g´

c© Achref EL MOUELHI c©

Exemple

PHP & AJAX

Contenu de page2.php

<?phpspl_autoload_register(function ($class) {

@include "managers/" . $class . ’.php’;});

$manager = new PersonneManager();$name = $_REQUEST["name"];$result = $manager->existsNom($name);echo $result ? "non valide" : "valide";

H & H: Research and Training 21 / 33

Page 23: AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite d’Aix-Marseille´ Chercheur en programmation par contrainte (IA) Ingenieur en g´

c© Achref EL MOUELHI c©

Exemple

PHP & AJAX

Code de la methode findByNom qu’il faut ajouter dansPersonneManager

function existsNom(string $nom): bool{

try {$req = $this->_db->prepare(’SELECT * FROM

personne where nom = :nom’);$req->bindValue(’:nom’, $nom, PDO::PARAM_STR

);$req->execute();return $req->rowCount() == 0 ? false : true;

} catch (PDOException $e) {echo "Erreur : " . $e->getMessage();

}return false;

}H & H: Research and Training 22 / 33

Page 24: AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite d’Aix-Marseille´ Chercheur en programmation par contrainte (IA) Ingenieur en g´

c© Achref EL MOUELHI c©

AJAX et jQuery

PHP & AJAX

Deux manieres differentes

la fonction $.ajax()

la methode load()

H & H: Research and Training 23 / 33

Page 25: AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite d’Aix-Marseille´ Chercheur en programmation par contrainte (IA) Ingenieur en g´

c© Achref EL MOUELHI c©

AJAX et jQuery

Syntaxe de la fonction $.ajax()

$.ajax({param1:value1,...,paramN:valueN})

Les parametres

async : Par defaut true pour dire asynchrone, sinon false

type : Par defaut : GET. Sinon POST

url : Par defaut : la page en cours, sinon la page ciblee

complete : Execute une fonction lorsque la requete est terminee

error : Fonction a executer en cas d’erreur

beforeSend : Fonction a executer avant l’envoi de la requete

success : Fonction a executer en cas de reussite de la requete

contentType : Par defaut : application/x-www-form-urlencoded ; charset=UTF-8

username, password, data (les parametres), dataType (html, xml),timeout, ...

H & H: Research and Training 24 / 33

Page 26: AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite d’Aix-Marseille´ Chercheur en programmation par contrainte (IA) Ingenieur en g´

c© Achref EL MOUELHI c©

AJAX et jQuery

Syntaxe de la fonction $.ajax()

$.ajax({param1:value1,...,paramN:valueN})

Les parametres

async : Par defaut true pour dire asynchrone, sinon false

type : Par defaut : GET. Sinon POST

url : Par defaut : la page en cours, sinon la page ciblee

complete : Execute une fonction lorsque la requete est terminee

error : Fonction a executer en cas d’erreur

beforeSend : Fonction a executer avant l’envoi de la requete

success : Fonction a executer en cas de reussite de la requete

contentType : Par defaut : application/x-www-form-urlencoded ; charset=UTF-8

username, password, data (les parametres), dataType (html, xml),timeout, ...

H & H: Research and Training 24 / 33

Page 27: AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite d’Aix-Marseille´ Chercheur en programmation par contrainte (IA) Ingenieur en g´

c© Achref EL MOUELHI c©

AJAX et jQuery

PHP & AJAX

Exemple

$(’#txt’).keyup(function(e){$.ajax({

type: "GET",url: "page2.php",data : {’name’ : $("#txt").val()},dataType: "html",success: function(data) {

$("#resultat").html(data);}

});});

H & H: Research and Training 25 / 33

Page 28: AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite d’Aix-Marseille´ Chercheur en programmation par contrainte (IA) Ingenieur en g´

c© Achref EL MOUELHI c©

AJAX et jQuery

PHP & AJAX

N’oublions pas de modifier page1.php

<!DOCTYPE html><html><head><title>Premiere page</title>

</head><body><div>Nom a chercher : <input type="text" id="txt"><span id="resultat"></span>

</div><script src="https://code.jquery.com/jquery-3.4.1.js"></script><script src="script.js"></script>

</body></html>

H & H: Research and Training 26 / 33

Page 29: AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite d’Aix-Marseille´ Chercheur en programmation par contrainte (IA) Ingenieur en g´

c© Achref EL MOUELHI c©

AJAX et jQuery

PHP & AJAX

Deux methodes raccourcies de $.ajax()

$.get()

$.post()

Elles font appel a $.ajax() mais de facon simplifiee

H & H: Research and Training 27 / 33

Page 30: AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite d’Aix-Marseille´ Chercheur en programmation par contrainte (IA) Ingenieur en g´

c© Achref EL MOUELHI c©

AJAX et jQuery

PHP & AJAX

Syntaxe :

// Attention a l’ordre des parametres$.post(

’page2.php’, // La page cible{

param1 : value1, // data...paramN : valueN

},nomFonction, // Fonction de retour’text’ // Format des donnees de retour

);function nomFonction(texteRetour){

// Traiter le retour de l’appel AJAX.}

H & H: Research and Training 28 / 33

Page 31: AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite d’Aix-Marseille´ Chercheur en programmation par contrainte (IA) Ingenieur en g´

c© Achref EL MOUELHI c©

AJAX et jQuery

PHP & AJAX

Exemple

$(’#txt’).keyup(function(e){$.post(

’page2.php’,{’name’ : $("#txt").val()},affiche,’text’

);function affiche (res) {

$("#resultat").html(res);}

});

H & H: Research and Training 29 / 33

Page 32: AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite d’Aix-Marseille´ Chercheur en programmation par contrainte (IA) Ingenieur en g´

c© Achref EL MOUELHI c©

AJAX et jQuery

PHP & AJAX

Surveiller les requetes AJAX

ajaxStart() : precise la fonction a executer lorsqu’une premiere requete AJAXcommence

ajaxStop() : precise la fonction a executer lorsque toutes les requetes AJAX sontterminees

ajaxComplete() : precise la fonction a executer lorsqu’une requete AJAX est terminee

ajaxSuccess() : precise la fonction a executer lorsqu’une requete AJAX s’est termineeavec succes

ajaxSend() : precise la fonction a executer avant qu’une requete AJAX soit envoyee

ajaxError() : precise la fonction a executer lorsqu’une requete AJAX s’est termineeavec erreur

...

H & H: Research and Training 30 / 33

Page 33: AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite d’Aix-Marseille´ Chercheur en programmation par contrainte (IA) Ingenieur en g´

c© Achref EL MOUELHI c©

AJAX et jQuery

PHP & AJAX

Exemple

// afficher une image de chargement initialementcachee

$(document).ajaxStart(function() {$( "#loading" ).show();

});

H & H: Research and Training 31 / 33

Page 34: AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite d’Aix-Marseille´ Chercheur en programmation par contrainte (IA) Ingenieur en g´

c© Achref EL MOUELHI c©

AJAX et jQuery

PHP & AJAX

Syntaxe de la methode load

$(selecteur).load(url, data, function(reponse, status, xhr));

Les parametres

url : La page ciblee (obligatoire)

data : Les parametres a envoyer

function(response,status,xhr) : Fonction a executer quand la methode estterminee

response : contient les donnees resultant de la demande

status : contient l’etat de la demande (’success’, ’error’...)

xhr : contient l’objet XMLHttpRequest

H & H: Research and Training 32 / 33

Page 35: AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite d’Aix-Marseille´ Chercheur en programmation par contrainte (IA) Ingenieur en g´

c© Achref EL MOUELHI c©

AJAX et jQuery

PHP & AJAX

Syntaxe de la methode load

$(selecteur).load(url, data, function(reponse, status, xhr));

Les parametres

url : La page ciblee (obligatoire)

data : Les parametres a envoyer

function(response,status,xhr) : Fonction a executer quand la methode estterminee

response : contient les donnees resultant de la demande

status : contient l’etat de la demande (’success’, ’error’...)

xhr : contient l’objet XMLHttpRequest

H & H: Research and Training 32 / 33

Page 36: AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite d’Aix-Marseille´ Chercheur en programmation par contrainte (IA) Ingenieur en g´

c© Achref EL MOUELHI c©

AJAX et jQuery

PHP & AJAXExemple 1

$(’#txt’).keyup(function() {var param = $("#txt").val();$(’#resultat’).load(’page2.php’, {

name : param});

});

Exemple 2

// charger la page2.php en entier dans mon #container$("#container").load("page2.php");

Exemple 3

// charger l’element avec id partie1 de la page2.php dans mon #container

$("#container").load("page2.php #partie1");

H & H: Research and Training 33 / 33

Page 37: AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite d’Aix-Marseille´ Chercheur en programmation par contrainte (IA) Ingenieur en g´

c© Achref EL MOUELHI c©

AJAX et jQuery

PHP & AJAXExemple 1

$(’#txt’).keyup(function() {var param = $("#txt").val();$(’#resultat’).load(’page2.php’, {

name : param});

});

Exemple 2

// charger la page2.php en entier dans mon #container$("#container").load("page2.php");

Exemple 3

// charger l’element avec id partie1 de la page2.php dans mon #container

$("#container").load("page2.php #partie1");

H & H: Research and Training 33 / 33

Page 38: AJAX et PHP - LIS_LAB · 2020. 7. 28. · AJAX et PHP Achref El Mouelhi Docteur de l’universite d’Aix-Marseille´ Chercheur en programmation par contrainte (IA) Ingenieur en g´

c© Achref EL MOUELHI c©

AJAX et jQuery

PHP & AJAXExemple 1

$(’#txt’).keyup(function() {var param = $("#txt").val();$(’#resultat’).load(’page2.php’, {

name : param});

});

Exemple 2

// charger la page2.php en entier dans mon #container$("#container").load("page2.php");

Exemple 3

// charger l’element avec id partie1 de la page2.php dans mon #container

$("#container").load("page2.php #partie1");

H & H: Research and Training 33 / 33