FRIHOSTFORUMSSEARCHFAQTOSBLOGSCOMPETITIONS
You are invited to Log in or Register a free Frihost Account!


Ajax - Qu'en pensez-vous ?





jeuxinfos
Bonjour,

Vous êtes sûrement au courant de l'arrivée de la technoliogie Ajax issue du Web 2.0.

Cette technique consiste en une fonction javascript (XMLHttpRequest) qui recharge uniquement la partie voulue d'une page.

Exemple :



Dans notre cas, on charge la page complète au chargement du site et lors du clique sur un lien, uniquement le cadre "contenu" est rechargé.

Le script à utiliser est relativement simple :

Code:
   var http_request = false;

            function makeRequest(url) {
   document.getElementById("affichage").innerHTML="<td valign='middle'><img src='http://jeuxinfos.free.fr/load.gif'></td>";
      
                http_request = false;

                if (window.XMLHttpRequest) { // Mozilla, Safari,...
                    http_request = new XMLHttpRequest();
                    if (http_request.overrideMimeType) {
                        http_request.overrideMimeType('text/xml');
                    }
                } else if (window.ActiveXObject) { // IE
                    try {
                        http_request = new ActiveXObject("Msxml2.XMLHTTP");
                    } catch (e) {
                        try {
                        http_request = new ActiveXObject("Microsoft.XMLHTTP");
                        } catch (e) {}
                    }
                }

                if (!http_request) {
                    alert('Impossible de lancer la commande AJAX ! Navigateur probablement incompatible.');
                    return false;
                }
                http_request.onreadystatechange = alertContents;
                http_request.open('GET', url, true);
                http_request.send(null);

            }

            function alertContents() {

                if (http_request.readyState == 4) {
                    if (http_request.status == 200) {
               
         document.getElementById("affichage").innerHTML=http_request.responseText;
                  
                       
                    } else {
                        alert('Probleme avec la requete AJAX');
                    }
                }

            }


Et pour charger une page avec Ajax :

Code:
<a href="#AJAX" onclick="makeRequest('fichieracharger.php')">


Et ajouter :

Code:
<div id="affichage"></div>


A l'endroit ou vous souhaitez que soit affiché le fichier chargé.

Pour un exemple plus concret, vous pouvez visiter mon site en Ajax (cf ma signature). Wink

Vivement l'arrivée des sites en Web v2.0
Zzz.
Ajax, ajax... ben disons que j'en pense que c'est un bon récurant. Même si parfois j'ai tendance à lui préférer Mr Propre... Enfin bref... Rolling Eyes

Nan sinon, la technologie est plus qu'arrivée, ca fait déjà plussieurs années qu'elle tourne partout et que ses limites ont déjà été plus que démiontrées, même si elle reste très puissante. Nan c'est en 2004 qu'on aurait pu dire qu'elle arrivait sur nos écrans.


J'essaie de retrouver un topo que j'ai fait en formation sur la question mais le site sur lequel ca avait été publié a bougé et je ne le retrouve plus. Suite au prochain épisode
jeuxinfos
Zzz. wrote:
Ajax, ajax... ben disons que j'en pense que c'est un bon récurant. Même si parfois j'ai tendance à lui préférer Mr Propre... Enfin bref... Rolling Eyes

Nan sinon, la technologie est plus qu'arrivée, ca fait déjà plussieurs années qu'elle tourne partout et que ses limites ont déjà été plus que démiontrées, même si elle reste très puissante. Nan c'est en 2004 qu'on aurait pu dire qu'elle arrivait sur nos écrans.


J'essaie de retrouver un topo que j'ai fait en formation sur la question mais le site sur lequel ca avait été publié a bougé et je ne le retrouve plus. Suite au prochain épisode


Oui je suis d'accord, il me semble que c'est Gmail qui a inauguré l'Ajax.

C'est encore très peu utilisé mais je pense que ça viendra. Si vous souhaitez vous lancer, n'ayez pas peur c'est très simple ! Regardez le mini tutoriel que j'ai fourni Wink
Zzz.
ben ya une raison très simple qui fait que c'est peut utilisé : c'est qu'une proportion non négligeable de gens surfent avec javascript désactivé, que ce soit ceux qui le font sciemment parce que "pas envie" ou ceux qui utilisent par la force des choses des navigateurs qui ne l'interprètent pas (en même temps, demande à un aveugle qui surfe avec Lynx de profiter de ton petit widget en ajax je pense qu'il rigolera beaucoup Rolling Eyes ...)

Ce ne serait pas encore trop grave si les webmaster pensait à faire un contenu alternatif et interprétable par tous, seulement beaucoup n'y pense pas. C'est comme les anims flash.
Ce serait pourtant si simple de mettre ne serait-ce qu'une image.jpg ou .gif pour ceux qui surfent avec AdBlock et qui zappe le flash par défaut...

Ceci dit, ca reste énormément puissant et il y a moyen de gérer beaucoup de choses très sympa avec Ajax mais mieux vaut, à mon avis ne pas axer son développement que sur ça.

D'autant plus que chacune des technologies qui font l'Ajax (xml, XHTTPRequest, javascript, css, le DOM, ...) utilisé tout seuls indépendamment les uns des autres rendent déjà de spectaculaires résultats quand tu les manis bien alors...
geo
Moi je passe tout par un sysème d'include.
L'ajax ne me changerai presque rien si ce n'est sur le point de vue de la rapidité de chargement , mais là encore , mon site n'est pas trop lourd
Zzz.
include ? en PHP ? Oui c'est une idée cependant si c'est bien du php qu'on parle ya quand même une différence assez notoire : c'est le PHP va charger le serveur de requètes pour en obtenir un résultat là où tout l'Ajax se passe en local côté client. du coup ca limite quand même pas mal la charge serveur, à prendre en compte surtout lorsque tu es hébergé sur un fournisseur à faible bande passante. Rein ne sert de charger inutilement le serveur quand la machine client peut faire largement sa part de boulot.

Mais bon après c'est une question d'équilibre à trouver lorsque tu développes et même si j'ouvre beaucoup ma grande gueule sur le sujet, je vous rassure ca n'est pas beaucoup plus évident pour moi que pour vous Mr. Green
MARCIV
Ouia bon mais moi j ai jamais reussis a faire tourner une routine en ajax alors me dire que c est super simple ...FO PAS DECONNER.....

Au passage si quelqu un pouvais m expliquer SIMPLEMENT le script utilise plus haut ca m aiderai merci.

PS pour contribuer au debat ca ralenti pas mal la sauce non avec toutes ces requettes non ?
draal
Dans la partie Scripts du forum (en anglais), j'ai indiqué un framework JavaScript très sympa : Mootools

Qui possède déja toutes les fonctions permettant de faire des appels Ajax en une ligne de code.

Ce framework orienté objets a énormément d'autres avantages, et je le conseille à toute personne souhaitant développer ses propres scripts "évolués".
Il y a également des tas d'effets graphiques simplifiés .. ça déborde un peu du sujet Ajax là, donc je vous laisse découvrir par vous même.

Pour la performance d'un site utilisant Ajax, et bien tout dépend évidemment de ce que l'on appelle en Ajax .. s'il s'agit d'une récupération de fichier (script, données ou autre), il faut s'assurer que celui-ci n'est pas trop volumineux et qu'il se trouve sur un serveur répondant très rapidement, avec un système de cache ou autre.
S'il s'agit d'un appel serveur, là aussi il faut s'assurer du temps de réponse, sinon l'utilisateur risque d'avoir des temps de chargement assez importants.

Ajax permet surtout de faire des traitements en tache de fond, mais c'est vrai que c'est une évolution très intéressante pour le web qui a maintenant fait ses preuves. Il ne faut pas s'en priver, mais ne pas en abuser non plus Wink
geo
MARCIV wrote:
Ouia bon mais moi j ai jamais reussis a faire tourner une routine en ajax alors me dire que c est super simple ...FO PAS DECONNER.....

Au passage si quelqu un pouvais m expliquer SIMPLEMENT le script utilise plus haut ca m aiderai merci.



tu créés une page qui contiendra ton design en fait la partie corps de ton site avec les menus ....

a l'intérieur de cette page tu installes la plus grosse partie du script qu'il y a plus haut.


a l'endroit ou tu voudras avoir du texte ( au milieu de ta page ) et ou tu voudras afficher plusieurs pages tu installes le <div id="affichage"></div>

la page a appeler avec la fonction
<a href="#AJAX" onclick="makeRequest('fichieracharger.php')">
sera lue a l'endroit ou tu as ton div
MARCIV
Merci geo en effet on peut pas faire plus simple Razz
dacode
Hello,

Ajax peut-être très bien pour des applications relativement simples, mais peut devenir problématique pour des prises en compte à la volée de paramètres récupérés et traités via ces scripts (c'est à dire, devoir gérer l'ordre d'execution des différents modules interactifs dans la page).
deejay-bee
Moi j'ai pas encore expérimenté la chose mais je trouve que c'est très prometteur. Par exemple comme gmail charge vite les pages, ça donne envie ! Si on pouvait fait des sites qui se chargent aussi vite grâce à cette technique ou même une nouvelle que on pourrait inventer, ça serai la classe, le net ne sera plus comme avant ! L'expérience utilisateur non plus, avec des pages qui se chargent à vitesse éclair.

C'est vien que vous en avez parlé parce que là je stagne un peu niveau connaissances web et j'ai bien envie de me mettre quelque chose de nouveau sous la dent !
Related topics
Le retour de Zinedine Zidane
Musiques faisant connaître "d'anciens" groupes .
Quel antivirus utilisez vous ?
Backlink
Trillian pour remplacer MSN, Yahoo, ICQ et AOL. Pensez y...
Outil d'analyse pour site web gratuit chez Google
1984 d'Orwell, ça commence maintenant ?
Idée sympathique de site web
Mes bannières, qu'en pensez vous??
Besoin de votre avis sur mon nouveau site.
Quelles idées vous faites vous de l'Afrique ?
un site sur des trucs que j'ai à vendre
Flamands contre Wallons ?
Avez vous déja été en contact avec la franc maçonnerie ?
Reply to topic    Frihost Forum Index -> Language Forums -> French

FRIHOST HOME | FAQ | TOS | ABOUT US | CONTACT US | SITE MAP
© 2005-2011 Frihost, forums powered by phpBB.