<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Hooba Studios &#187; AJAX</title>
	<atom:link href="http://www.hooba.ca/blog/categorie/ajax/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.hooba.ca/blog</link>
	<description></description>
	<lastBuildDate>Sun, 11 Jul 2010 13:51:09 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Échange d&#8217;objets JSON entre PHP et JavaScript, facile grâce à jQuery</title>
		<link>http://www.hooba.ca/blog/2008/echange-dobjets-json-entre-php-et-javascript-facile-grace-a-jquery/</link>
		<comments>http://www.hooba.ca/blog/2008/echange-dobjets-json-entre-php-et-javascript-facile-grace-a-jquery/#comments</comments>
		<pubDate>Sat, 22 Nov 2008 19:28:19 +0000</pubDate>
		<dc:creator>Antoine Leclair</dc:creator>
				<category><![CDATA[AJAX]]></category>
		<category><![CDATA[JSON]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[jQuery]]></category>

		<guid isPermaLink="false">http://www.hooba.ca/blog/?p=105</guid>
		<description><![CDATA[Sites internet AJAX avec jQuery
jQuery fourni un moyen efficace de sélectionner des éléments du DOM et de les affecter, mais il fourni aussi un moyen très simple de faire de l&#8217;échange AJAX. Il fourni des fonctions comme load(), $.get(), $.post(), $.ajax() et, mon sujet d&#8217;aujourd&#8217;hui, $.getJSON().
Cette fonction permet de faire une requête en envoyant un [...]]]></description>
			<content:encoded><![CDATA[<h3>Sites internet AJAX avec jQuery</h3>
<p>jQuery fourni un moyen efficace de sélectionner des éléments du DOM et de les affecter, mais il fourni aussi un moyen très simple de faire de l&#8217;échange AJAX. Il fourni des fonctions comme <code>load()</code>, <code>$.get()</code>, <code>$.post()</code>, <code>$.ajax()</code> et, mon sujet d&#8217;aujourd&#8217;hui, <code>$.getJSON()</code>.</p>
<p>Cette fonction permet de faire une requête en envoyant un objet JSON, qui sera traduit en paramètres GET, et de reçevoir en réponse un objet JSON qui sera automatiquement traité.<span id="more-105"></span></p>
<h3>Exemple</h3>
<p>Pour démontrer le fonctionnement, je vous montre 3 fichiers. Le fichier HTML (un extrait):</p>
<pre><code>&lt;h2 id="nom"&gt;&lt;/h2&gt;
&lt;p id="prix"&gt;&lt;/p&gt;
&lt;p id="description"&gt;&lt;/p&gt;</code></pre>
<p>Le fichier Javascript:</p>
<pre><code>$(function(){

  // lorsque le DOM est chargé, cette fonction sera exécutée

  $.getJSON("handler.php",  // le fichier qui recevera la requête
    {"categorie": "electronique", "produit": 3},  // les paramètres
    function(data){  // la fonction qui traitera l'objet reçu
      $("#nom").html(data.nom);
      $("#prix").html(data.prix);
      $("#description").html(data.description);
  });
});</code></pre>
<p>Le fichier PHP (<code>handler.php</code> dans ce cas):</p>
<pre><code>&lt;?php
  // ...
  // code qui utilise $_GET['categorie'] et $_GET['produit']
  // pour ses requêtes de base de donnée
  // ...

  $reponse['nom'] = $nom;
  $reponse['prix'] = $prix;
  $reponse['description'] = $description;

  // on a notre objet $reponse (un array en fait)
  // reste juste à l'encoder en JSON et l'envoyer

  header('Content-Type: application/json');
  echo json_encode($reponse);
?&gt;
</code></pre>
<h3>Ce qui se produit</h3>
<p>Lorsque le DOM de la page est chargé, jQuery envoie une requête à <code>hanlder.php</code> en arrière plan. La requête est un <code>GET</code>, donc l&#8217;URL réel demandé sera:</p>
<pre><code>handler.php?categorie=electronique&#038;produit=3</code></pre>
<p>Le fichier <code>handler.php</code> reçoit la requête, fait les traitement nécessaire et crée un objet prêt à être envoyé. Lorsqu&#8217;il a terminé de créé son objet à envoyer, il signifit dans le header HTTP qu&#8217;il envoie une réponse JSON. Il envoie ensuite l&#8217;objet qu&#8217;il a traduit en JSON. Le script JavaScript attendait la réponse avec la fonction qui avait été passée en paramètre à <code>$.getJSON()</code>. L&#8217;objet est donc traité et on peut s&#8217;en servir à notre guise (dans ce cas, on affiche les informations du produit demandé).</p>
<h3>Encore une fois, jQuery faclilite la conception</h3>
<p>C&#8217;était donc une raison de plus d&#8217;aimer jQuery (je vous assure qu&#8217;il y en a plein d&#8217;autres là d&#8217;où elles viennent).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.hooba.ca/blog/2008/echange-dobjets-json-entre-php-et-javascript-facile-grace-a-jquery/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
