oujood.com

Ajaxe et PHP

AJAX est une technologie qui permet la mise à jour de certaines parties d'une page web, sans avoir à recharger la page entière.
AJAX est une technologie qui permet la mise à jour de certaines parties d'une page web, sans avoir à recharger la page entière. Qu'est-ce qu'AJAX ?
Dans notre tutoriel PHP, nous allons démontrer comment AJAX peut mettre à jour des parties d'une page Web, sans recharger la page entière. Le script du serveur sera écrit en PHP

chercher |

PHP - AJAX Introduction

AJAX = Asynchronous JavaScript and XML.

AJAX est une technique permettant de créer des pages Web rapides et dynamiques.
AJAX permet de mettre à jour les pages Web de manière asynchrone en échangeant de petites quantités de données avec le serveur en coulisse. Cela signifie qu'il est possible de mettre à jour certaines parties d'une page web sans recharger la page entière.
Les pages web classiques (qui n'utilisent pas AJAX) doivent être rechargées tout entière si le contenu est modifié.
Exemples d'applications utilisant AJAX : Google Maps, Gmail, Youtube et les onglets de Facebook.
AJAX est basé sur les normes Internet
AJAX est basé sur les normes Internet et il utilise une combinaison de :
• l'objet XMLHttpRequest qui permet d’échanger des données de manière asynchrone avec un serveur
• JavaScript et DOM pour afficher et interagir avec les informations
• CSS pour styliser les données
• XML qui est souvent utilisé comme format de transfert des données.
Les applications AJAX sont indépendantes du navigateur et de la plate-forme !

Suggestion de Google

AJAX a été rendu populaire en 2005 par Google, avec Google Suggest.
Google Suggest utilise AJAX pour créer une interface web très dynamique : Lorsque vous commencez à taper dans le champ de recherche de Google, un JavaScript envoie les lettres à un serveur et le serveur renvoie une liste de suggestions.


Commencez à utiliser AJAX dès aujourd'hui

Dans notre tutoriel PHP, nous allons démontrer comment AJAX peut mettre à jour des parties d'une page Web, sans recharger la page entière. Le script du serveur sera écrit en PHP.
Si vous souhaitez en savoir plus sur AJAX, consultez notre tutoriel AJAX.


AJAX et PHP

AJAX est utilisé pour créer des applications plus interactives.

Exemple AJAX PHP

L'exemple suivant montre comment une page Web peut communiquer avec un serveur Web pendant qu'un utilisateur tape des caractères dans un champ de saisie : L'exemple expliqué

Dans l'exemple ci-dessus, lorsqu'un utilisateur tape un caractère dans le champ de saisie, une fonction appelée "showHint()" est exécutée. Cette fonction est déclenchée par l'événement onkeyup.

Voici le code HTML :

Exemple :       Copier le code

<html>
<head>
<meta charset="utf-8">
<script type="text/javascript">
function showHint(str)
{
var xmlhttp;
if (str.length==0)
  {
  document.getElementById("txtHint").innerHTML="";
  return;
  }
if (window.XMLHttpRequest)
  {
  xmlhttp=new XMLHttpRequest();
  }
else
  {// pour IE5 et IE6
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
    document.getElementById("texte").innerHTML=xmlhttp.responseText;
    }
  }
xmlhttp.open("GET","obteniIndice.php?q="+str,true);
xmlhttp.send();
}
</script>
</head>
<body>
 
<h3> Commencez à taper un nom d'animal dans le champ de saisie suivant:
 </h3>
<form action="">
Nom de l'animal recherché: <input type="text" id="txt1" onkeyup="showHint(this.value)" />
</form>
<p>Suggestions: <span id="texte"></span></p>
 
</body>
</html>

Explication du code :

Tout d'abord, vérifiez si le champ de saisie est vide (str.length == 0). Si c'est le cas, effacez le contenu de l'espace réservé txtHint et quittez la fonction.

Cependant, si le champ de saisie n'est pas vide, procédez comme suit :
Créez un objet XMLHttpRequest.
Créez la fonction qui sera exécutée lorsque la réponse du serveur sera prête.
Envoyez la requête à un fichier PHP (obteniIndice.php) sur le serveur.
Remarquez que le paramètre q est ajouté à l'url (obteniIndice.php?q="+str)
Et la variable str contient le contenu du champ de saisie.
Le fichier PHP - " obteniIndice.php"
Le fichier PHP vérifie un tableau de noms d'animaux , et renvoie le ou les noms correspondants au navigateur :


voici le code du fichier " obteniIndice.php"

Exemple :       Copier le code

 <?php
// Tableau avec des noms d'animaux
$a[]="Addax";$a[]="Abeille";$a[]="Agouti";$a[]="Âne de Somalie";$a[]="Antilope cheval";$a[]="Antilope d'Amérique";$a[]="Anoa";$a[]="Argali";$a[]="Aye-aye";
$a[]="Baleine à bosse";$a[]="Belette";$a[]="Bélouga";$a[]="Bison d'Amérique";$a[]="Blaireau";$a[]="Bouquetin des Alpes";$a[]="Buffle";
$a[]="Cabiai";$a[]="Cachalot";$a[]="Campagnol";$a[]="Capucin";$a[]="Capybara";$a[]="Caracal";$a[]="Carcajou";$a[]="Caribou";$a[]="Castor";$a[]="Cerf de Virginie";$a[]="Chacal";$a[]="Chacal doré";$a[]="Chameau de Bactriane";$a[]="Chamois";$a[]="Chat pêcheur";$a[]="Chaus";$a[]="Chauve-souris brune";$a[]="Chauve-souris vampire";$a[]="Cheval de Przewalskii";$a[]="Chèvre";$a[]="Chien des prairies";$a[]="Chien viverrin";$a[]="Chimpanzé";$a[]="Chinchilla";$a[]="Coati";$a[]="Coendu";$a[]="Condylure";$a[]="Couguar";$a[]="Couscous";$a[]="Coyote";$a[]="Cynoptère";
$a[]="Daim";$a[]="Daman";$a[]="Dauphin commun";$a[]="Dauphin de Gill";$a[]="Dauphin du Gange";$a[]="Dendrolague";$a[]="Dhole";$a[]="Diable de Tasmanie";$a[]="Dingo";
$a[]="échidné";$a[]="écureuil gris";$a[]="écureuil géant de l'Inde";$a[]="écureuil noir";$a[]="écureuil roux";$a[]="éléphant d'Afrique";$a[]="éléphant d'Asie";$a[]="éléphant de mer";
$a[]="Fausse orque";$a[]="Fennec";$a[]="Fossa";$a[]="Furet";
$a[]="Gautre à poches";$a[]="Gazelle";$a[]="Gelada";$a[]="Genette";$a[]="Gerbille";$a[]="Gerenuk";$a[]="Gibbon";$a[]="Girafe";$a[]="Gnou";$a[]="Goral";$a[]="Gorille";$a[]="Grizzli";$a[]="Guanaco";$a[]="Guépard";
$a[]="Hamster";$a[]="Hamster doré";$a[]="Hélogale";$a[]="Hérisson";$a[]="Hermine";$a[]="Hétérocéphale";$a[]="Hippopotame amphibie";$a[]="Hippopotam nain";$a[]="Hippotrague noir";$a[]="Hydropote";$a[]="Hyène";$a[]="Hyène rayée";
$a[]="Indri";
$a[]="Jaguar";$a[]="Jaguarondi";
$a[]="Kangourou gris";$a[]="Kangourou roux";$a[]="Kinkajou";$a[]="Koala";
$a[]="Lama";$a[]="Lamantin";$a[]="Lapin des volcans";$a[]="Lémur";$a[]="Lémur Vari";$a[]="Léopard des neiges";$a[]="Lièvre d'Amérique";$a[]="Lièvre sauteur";$a[]="Lion";$a[]="Loir";$a[]="Loris grêle";$a[]="Loup à crinière";$a[]="Loup commun";$a[]="Loup d'Abyssinie";$a[]="Loup de Tasmanie";$a[]="Loup roux";$a[]="Loutre";$a[]="Loutre des rivières";$a[]="Lycaon";$a[]="Lynx";
$a[]="Macaque";$a[]="Macroscélidé";$a[]="Mandrill";$a[]="Mangouste";$a[]="Mara";$a[]="Marguay";$a[]="Markhor";$a[]="Marmotte";$a[]="Marmotte commune";$a[]="Marmotte de Vancouver";$a[]="Marsouin";$a[]="Martre";$a[]="Microcèbe";$a[]="Morse";$a[]="Moufette";$a[]="Mouflon d'Amérique";$a[]="Mouton";$a[]="Mulot sylvestre";$a[]="Muntjac";$a[]="Musaraigne aquatique";$a[]="Muscardin";
$a[]="Nandinie";$a[]="Narval";$a[]="Nasique";$a[]="Nilgau";$a[]="Noctule commune";
$a[]="Ocelot";$a[]="Okapi";$a[]="Oncille";$a[]="Opossum";$a[]="Orang-Outan";$a[]="Oreillard roux";$a[]="Orignal";$a[]="Ornithorynque";$a[]="Orque";$a[]="Oryctérope";$a[]="Oryx";$a[]="Otarie";$a[]="Otocyon";$a[]="Oreotrague";$a[]="Ouistiti argenté";$a[]="Ouistiti pygmée";$a[]="Ourebi";$a[]="Ours brun";$a[]="Ours lippu";$a[]="Ours malais";$a[]="Ours polaire";
$a[]="Panda géant";$a[]="Pangolin";$a[]="Panthère";$a[]="Paresseux";$a[]="Pécari";$a[]="Petit panda";$a[]="Phacochère";$a[]="Phalanger pygmé";$a[]="Phalanger volant";$a[]="Phoque";$a[]="Phoque commun";$a[]="Phoque du Groenland";$a[]="Pika";$a[]="Pinche";$a[]="Pipistrelle";$a[]="Polatouche";$a[]="Porc";$a[]="Porc-épic";$a[]="Porte-musc";$a[]="Pronghorn";$a[]="Propithèque de Verreaux";$a[]="Protèle";$a[]="Puma";
$a[]="Ragondin";$a[]="Rat des moissons";$a[]="Rat kangourou";$a[]="Rat musqué";$a[]="Rat surmulot";$a[]="Raton laveur";$a[]="Renard arctique";$a[]="Renard gris";$a[]="Renard roux";$a[]="Rhinocéros blanc";$a[]="Rhinocéros de l'Inde";$a[]="Rorqual";$a[]="Roussette";
$a[]="Saimiri";$a[]="Sajou";$a[]="Sanglier";$a[]="Senex de Centurio";$a[]="Serval";$a[]="Singe à gorge blanche";$a[]="Singe écureuil";$a[]="Singe hurleur";$a[]="Sitatunga";$a[]="Solénodonte";$a[]="Souffleur";$a[]="Suricate";
$a[]="Tamarin";$a[]="Tamanoir";$a[]="Tamia de Sibérie";$a[]="Tamia rayé";$a[]="Tanrec";$a[]="Tapir";$a[]="Tarsier";$a[]="Tarsier occidental";$a[]="Tatou";$a[]="Taupe";$a[]="Tigre";$a[]="Tigre blanc";$a[]="Tigre de Sibérie";
$a[]="Viscache";
$a[]="Wallaby";$a[]="Wombat";
$a[]="Xérus";
$a[]="Yack";$a[]="Zèbre";$a[]="Zébu";$a[]="Zibeline";$a[]="Zorille";

//ajout de paramétre q  à l'URL
$q=$_GET["q"];

//affichage de tout si q>0
if (strlen($q) > 0)
  {
  $hint="";
  for($i=0; $i<count($a); $i++)
    {
    if (strtolower($q)==strtolower(substr($a[$i],0,strlen($q))))
      {
      if ($hint=="")
        {
        $hint=$a[$i];
        }
      else
        {
        $hint=$hint." , ".$a[$i];
        }
      }
    }
  }


//affichage si q=0
if ($hint == "")
  {
  $response="pas de seggestion";
  }
else
  {
  $response=$hint;
  }

//La response
echo $response;
?>


Cours precedent:
  Exemple AJAX PHP
    Sommaire de :
Le langage JavaScript
 Cours suivant:
    ajax base de données
Par carabde 22 aout 2021

Voir aussi nos tutoriel :

attributs de formulaire et input

Nouveaux attributs de formulaire et input

L'Attribut title d'un élément html

Spécifie des informations supplémentaires sur un élément

fonction strcmp

Comparaison binaire de chaînes