Une question à propos d'Ajax

WRInaute occasionnel
Bonjour,

Je voudrais afficher des phrases dans un coin du site, sans recharger la page. Ceci se fait normalement avec Ajax.
Mais à vrai dire, je ne sais pas "programmer en ajax", je me souviens seulement que cette "technologie" est apparue maintenant il y a une petite dizaine d'année.
Et ce que je me demande, c'est si elle est toujours aussi utilisée, ou est-ce que c'est tombé en désuétude et remplacé par autre chose.

Dans le cas contraire, si c'est toujours "à la mode" et que ça permet de construire des projets durables, alors connaissez-vous un bon tutoriel bien complet pour débuter et plus encore ? (gratos).


Merci d'avance chers wrinautes.
 
WRInaute accro
Tu n'es pas obligé de faire de l'AJAX pour afficher des phrases.
Un script.js externe avec du document.write() ça px suffire, ça dépend ce que tu veux faire exactement.
 
WRInaute occasionnel
Salut à vous, merci pour vos réponses.

Ce que je veux faire ? Disons que j'ai une liste de mots sur la colonne de gauche et un encart central vide, ou avec un texte par défaut.
Je clique sur un mot dans la colonne de gauche et l'article correspondant s'affiche dans l'encart central, à la place du texte par défaut ou de l'article précédemment affiché et correspondant à un autre mot de la liste de gauche, laquelle fait donc office de menu. Il n'y a donc jamais de rechargement de page.

Alors ? Ajax ?
 
WRInaute accro
spout a dit:
Là oui AJAX.

Pas forcément.
C'est un peu le principe des onglets. Chaque mot de gauche correspond à un onglet et le contenu de la page s'affiche au centre. Comme si on avait cliqué sur un autre onglet. Il existe beaucoup de scripts pour gérer les onglets et en les modifiant légèrement c'est possible de faire ce qui est attendu dans ce cas.
 
WRInaute occasionnel
spout a dit:
Là oui AJAX.
Ok et donc pour en revenir à une de mes questions de départ, la méthode Ajax est-elle toujours d'actu', ou est-ce que ça a été remplacé par d'autres méthodes, ou peut-être encore est-ce en passe de l'être ? Histoire de ne pas programmer un truc à changer du tout au tout dans un an...

UsagiYojimbo a dit:
Par contre, gare au SEO.
Ouais boh, pfouu... Le SEO google, ce que j'en pense... Quand je vois la qualité de certains sites passés devant le mien ces dernières années...
Je programme comme j'ai envie pour autant que ça plaise aux utilisateurs, Google se dé***rde.

spout a dit:
Bon bah comme ça tout le monde est content.
 
WRInaute accro
Oui c'est tjs d'actu.
Bien que certains évangélistes te diraient qu'il faut faire ça avec AngularJS/VueJS/React/insert favorite technical debt framework here/... faut pas exagérer :D
 
WRInaute discret
si tu utilise déjà jquery je te conseille d'utiliser ajax via jquery, sinon si c'est juste pour un besoin ajax c'est un peu lourd d'inclure jquery juste pour ça, mais y'a vraiment tout ce qu'il faut niveau documentatio sur google.
Ce qu'il faut bien comprendre c'est le principe:
- un utilisateur déclenche un événement javascript
- l'événement va faire appel à ajax pour interroger ton serveur sur les nouvelles données
- ajax te renvoie la réponse du serveur ou erreur ect...
- en fonction de la réponse tu traite les données récupérer par la fonction ajax, dans le cas où ça se passe bien, ex: tu affiches la réponse en javascript
 
WRInaute occasionnel
Merci pour le lien, spout.
Toutefois, je ne vois pas trop en quoi c'est de l'ajax et en quoi c'est "seo friendly" :
Dans le code source, tout parait chargé d'avance, ni l'URL ni le titre de la page ne change... Ca ressemble plutôt à du javascript tout simple, non ?

Aussi, j'ai trouvé quelques tutos qui datent un peu (2009...) pour faire ce que je veux.
Mais ce que je demande à l'instant, c'est est-ce que l'ajax induit un risque supplémentaire, question piratage, par rapport à une simple page PHP.


Merci d'avance et bon dimanche à tous.
 
WRInaute accro
C'est SEO friendly parce que ça fonctionne aussi sans JS.

Il n'y a pas plus de risque de piratage qu'un autre script non AJAX.
 
WRInaute accro
Alorsladaccord a dit:
Comment cela peut-il être SEO friendly alors que ni l'url ni les balises métas ne changent ???
C'est juste "proof of concept", j'en avais rien à secouer des meta pour cet exemple, maintenant je ferais ça avec history.pushState.
 
WRInaute occasionnel
Il est donc possible de créer une page ajax en changeant à chaque fois les balises méta et l'url ?

Mais pourquoi tous les sites ne sont-ils pas en ajax, dans ce cas ? Manque de compétence des webmestres ?
 
WRInaute accro
Pour que les meta changent c'est parce que le site fonctionne avec et sans JS. Et c'est la version sans JS où les meta changeraient.
 
WRInaute accro
c'est pas ce qui s'appelait autrefois le web 2.0 ?

Tu n'imagines même pas combien de site j'ai arrêté de consulter quand ils sont passer à ce système (la tribune, etc...).
Il faut aimer... Moi j'aime pas du tout quand ça bouge sans arrêt et que tu ne retrouves jamais les choses à leur place.
 
WRInaute occasionnel
indigene a dit:
c'est pas ce qui s'appelait autrefois le web 2.0 ?

Tu n'imagines même pas combien de site j'ai arrêté de consulter quand ils sont passer à ce système (la tribune, etc...).
Il faut aimer... Moi j'aime pas du tout quand ça bouge sans arrêt et que tu ne retrouves jamais les choses à leur place.

Hum... Avant Ajax c'était donc le web 1.0, avec ajax c'était alors 2.0 mais dans ce cas je n'ai pas saisi où se trouve l'innovation du 3.0 où nous serions. D'autant plus que comme le dit UsagiYojimbo, Ajax c'est quand même le "top". Or je crois qu'Usagi' sait bien programmer. Donc bon qu'en est-il au juste, la vérité est ailleurs, la vérité vous rendra libre, je serai au milieu de vous, etc...
Alors, hein ?

J'écoute.
 
WRInaute accro
+1 pour Usagi.
Et il ne faut pas limiter Web 2.0 à AJAX, c'est plutôt "User Generated Content".

Indigene il est tjs à Altavista et Hotbot, on peux pas lui en vouloir :mrgreen:
 
WRInaute occasionnel
Et sinon juste comme ça, Ajax est-il pour vous devenu un "incontournable" de l'internet. Si on le supprime demain, qu'est-ce que ça change ?
 
WRInaute accro
Alorsladaccord a dit:
Hum... Avant Ajax c'était donc le web 1.0, avec ajax c'était alors 2.0 mais dans ce cas je n'ai pas saisi où se trouve l'innovation du 3.0 où nous serions.

Non, le web 1.0 n'a jamais existé.

Maintenant on fait du responsive design ou du flat design et tout ça en html 5 en s'assurant que c'est compatible pour une visualisation sur un smartphone.

Ajax c'était un moyen de rendre les sites "dynamiques" (ou plutôt changeant, funs, clignottants, lol) à la fin des années 2000. Mais depuis les années 2010 on se tourne surtout vers une compatibilité smartphone. Donc out les design très lourds avec beaucoup d'images (==> arrivée du flat design) et out les trucs plein de javascript qui ont beaucoup de problèmes de compatibilité en fonction du matériel utilisé pour visualiser.
jquery et bootstrap sont largement suffisant pour n'importe quel site. Ce sont des technologies assez abouties.

Perso je n'aime pas trop le flat design, c'est juste une mode. Mais le responsive c'est incontournable.

Ceci dit on peut faire du responsive et faire de l'ajax en même temps. Mais comme site basé sur Ajax il y a bien sur facebook, et après ? Il faut une bécanne super musclée avec beaucoup de mémoire pour faire tourner correctement un site reposant sur du javascript. Pas forcément le cas de tous les utilisateurs. C'est top pour les programmeurs qui s'éclatent mais ils ne pensent pas à l'accessibilité et aux utilisateurs qui vont utiliser leur site.
 
WRInaute accro
Tu mélanges plein de chose. Opposer Jquery (qui est un framework JS) à Ajax n'a aucun sens... d'autant que JQuery permet (notamment) de faciliter la tâche aux développeurs qui ont besoin de mettre en place de l'asynchrone. Et comme je le disais plus haut, c'est aussi une question de savoir-faire côté développeur. Développer tout un site en Ajax demande une bonne vision d'ensemble des impacts possibles (sur les ressources mais aussi sur la visibilité SEO du site).

Sachant, enfin, que quand je lis ton post, j'ai l'impression que pour toi Cdiscount c'est de l'Ajax.

(ou plutôt changeant, funs, clignottants, lol)
 
WRInaute accro
Pas du tout pour cdiscount.
En fait je connais que très peu de sites en ajax car en général je n'y retourne pas. Il y avait latribune à une époque qui avait mis de l'ajax, je ne sais pas s'ils ont changé de techno depuis

Et jquery c'est un framework mais aussi une panoplie d'outils que l'on peut utiliser sans forcément utiliser le framework. Un link à une ressource css et js et ça suffit. Je pense avoir du jquery dans mon site alors que je n'utilise aucun framework de dev.

Le problème avec ajax c'est que beaucoup de développeurs se sont lancés là dedans parce que c'était une mode et sans connaitre vraiment la philosophie et la technique. Ils ont fait n'importe quoi. C'est ce qu'on voit aussi avec les boites qui se lancent dans des méthodes AGIL pour remplacer les méthodes traditionnelles alors qu'ils n'y connaissent rien à AGIL et qu'aucune formation n'est donnée aux analystes/développeurs. Donc au final tout le monde fait du grand n'importe quoi.
 
WRInaute occasionnel
indigene a dit:
le web 1.0 n'a jamais existé.
Si, dans les années 70 avec Arpa, le Cern, ect... Si j'ai bien lu mes classiques. M'enfin peu importe.

indigene a dit:
Maintenant on fait du responsive design ou du flat design et tout ça en html 5 en s'assurant que c'est compatible pour une visualisation sur un smartphone.
C'est un point particulièrement important, en effet.
Et le HTML 5 a changé quoi, pour ce qui est d'afficher un site simple, sans fioriture, avec quelques div en%, etc... ?

indigene a dit:
Ajax c'était un moyen de rendre les sites "dynamiques" (ou plutôt changeant, funs, clignottants, lol) à la fin des années 2000. Mais depuis les années 2010 on se tourne surtout vers une compatibilité smartphone. Donc out les design très lourds avec beaucoup d'images (==> arrivée du flat design) et out les trucs plein de javascript qui ont beaucoup de problèmes de compatibilité en fonction du matériel utilisé pour visualiser.
Et ne peut-on faire un site ajax très simple qui fonctionnerait très bien avec tous les smartphone, dans la mesure ou on évite les flash, .div cachées à tout va et autres feux d'artifices : juste un texte qui change au centre.
indigene a dit:
jquery et bootstrap sont largement suffisant pour n'importe quel site. Ce sont des technologies assez abouties.
Jquery revient sans arrêt ici... Faut que je me renseigne avant de me lancer. Ca fait la même chose qu'ajax ou quoi ? C'est à part ou c'est complémentaire ?

indigene a dit:
Perso je n'aime pas trop le flat design, c'est juste une mode. Mais le responsive c'est incontournable.
Certes mais le "responsive", ça concerne uniquement le htlm non ? Le placement des div en fonction de la taille de l'écra, non ?
 
WRInaute accro
Alorsladaccord a dit:
Jquery revient sans arrêt ici... Faut que je me renseigne avant de me lancer. Ca fait la même chose qu'ajax ou quoi ? C'est à part ou c'est complémentaire ?
C'est pour simplifier le dev pour les incohérences d'implémentation de JS d'un browser à l'autre.
Plus de détails ici: https://fr.wikipedia.org/wiki/JQuery

Bon si tu connais pas encore jQuery, je dirais qu'en 2016, bientôt 2017, ça vaut plus trop la peine de s'y mettre.
http://youmightnotneedjquery.com/
 
WRInaute occasionnel
Hum... C'est pour ça que j'ai jamais appris les trucs en javamachins et javachoses, ça m'a toujours paru être des gadgets qui fonctionnent plus ou moins bien selon les navigateurs, les versions, les terminaux et que sais-je encore...

Je me demande si je ne vais pas m'en tenir à un bon vieux site en php/mysql, bien dépouillé.
Avez-vous des conseils pour optimiser le temps d'affichage d'une page php ?
Je me souviens qu'il y a quelques années, il était par exemple conseillé de remplacer tous les echo""; par des echo ' '; pour épargner des ressources serveurs.
Qu'en est-il "de nos jours" ?

Merci d'avance !
 
WRInaute occasionnel
PHP7 dites-vous mon cher Spout... Diantre... PHP7 + POO alors ? Un truc pour faire marcher les fusées, c'est ça ?
Pourquoi pas, oui, bon alors question rituelle : quoi de neuf avec PHP 7 ? Genre les trois plus grosses innovations résumées, ça serait quoi ?
 
WRInaute occasionnel
Bonjour à tous.

Je suis dans les tutos ajax, là. Une question donc : va-t'il falloir galérer avec des histoires de compatibilité entre les navigateurs, voire de détection/distinction PC/mobile, avec à chaque fois des bouts de code différents ? Ca sent.
 
WRInaute discret
Alorsladaccord a dit:
Bonjour à tous.

Je suis dans les tutos ajax, là. Une question donc : va-t'il falloir galérer avec des histoires de compatibilité entre les navigateurs, voire de détection/distinction PC/mobile, avec à chaque fois des bouts de code différents ? Ca sent.
Ça dépend de ce que tu compte utiliser comme fonction javascript.
Tu peux utiliser un site comme http://caniuse.com pour vérifier la compatibilité :
http://caniuse.com/#search=XMLHttpRequest
 
WRInaute discret
jquery te permet justement la compatibilité inter navigateurs, après pour ce qui est du PC/mobile tout dépend de ce que tu veux faire
 
Discussions similaires
Haut