Spipu (./52) :
ben si... un input text, un radio, un checkbox, un select, un textarea, un file, ca ne se gère pas du tout de la meme maniere pour le traitement ! t'auras parfois des [] en plus, besoin de traitements pour empecher les balises html, relié à un tableau pour associé une clef à une valeur, ..., ... tu ne peux pas dissocier un champ d'un formulaire à la manière dont il est traité derriere.
Tu raisonnes beaucoup trop près du code, ce qui importe au final c'est la nature des éléments manipulés. Si ton code a besoin de recevoir une chaine ce caractère par exemple, tu n'as pas besoin de savoir précisément par quel élément cette chaine va lui être envoyé; c'est ce qui te garantit de conserver un couplage faible entre les différentes parties logiques de ton site, et donc d'avoir quelque chose un minimum modulable.
Le jour où je veux mettre autre chose que de l'HTML en frond-end (une form Windows par exemple), ça doit être possible sans rien changer à mon code métier. Si tu commences à mélanger code et présentation un peu partout, tu vas te retrouver avec un gros truc monobloc complètement impossible à utiliser d'une autre façon.
je crois que ce que toi t'appeles template, moi j'appele ca framework...
[ ... ]
la preuve, pour moi, smarty est un framework
donc forcement, on peut pas se comprendre... 
Tu mélanges un peu tout : bien sûr que Smarty est un framework, c'est un framework qui gère la partie présentation d'un site web, ça n'a rien d'incompatible ^^
Regarde par exemple ce qu'en dit
Wikipedia : "
Smarty est un moteur de template pour PHP. [ ... ] Il facilite la séparation entre la logique applicative et la présentation.". Le code que contiennent les templates ne doit (et ne peut) être utilisé que pour modifier l'aspect du site, jamais pour modifier des données; c'est uniquement du code de présentation.
- tu parles de "mettre" de l'ajax dans un site internet qui n'en avait pas au départ, et qui n'en avait pas besoin, juste pour ne recharger que certaines parties. Dans ce cas, le site ne necessite pas l'utilisation d'ajax, c'est juste un confort de rapidité, et dans ce cas là en effet, il n'est pas (forcement) necessaire de refaire tout derriere, de tout eclater, mais juste d'envoyer tout le contenu, et de ne prendre côté client que la partie à mettre à jour.
D'où mon idée initiale (post
./1), mais qui supprime quand même l'un des gros avantages d'Ajax qui était de ne pas envoyer la page entière au client. Problème : comment permettre l'envoi d'une partie de la page sans briser complètement la conception ?
- je parle d'applications web ou l'ajax est obligatoire au fonctionnement, et où tu es obligé d'eclater chaque élément et de n'envoyer que certains car les autres ne pourraient pas l'être de toute facon, car ils ont été générés élément par élément et que tu n'as pas les éléments pour les reconstruire (ex : mon client FTP en PHP que je t'avais montré il me semble, qui construit l'arborescence au fur et à mesure ou tu la développes)
Je ne vois pas vraiment de différence : ton client FTP pourrait très bien fonctionner sans ajax, en rechargeant la page quand on clique sur un lien (attention, je ne me place pas du tout d'un point de vue code : c'est pour moi complètement hors sujet ici, je parle juste de la logique et des concepts manipulés). En fait je cherche actuellement à savoir si ces deux utilisations que tu appelles différentes le sont vraiment, et à l'heure actuelle je n'en suis pas vraiment convaincu mais je manque d'éléments de réponse.
lol, les widgets sont juste des pages tout ce qui a de plus classic, affichés dans des iframes, avec un tout petit xml pour definir la taille de cette iframe et les propriétés des paramètres. en fait c'est hyper simple à fabriquer, et un widget attaqué avec les bons paramètres en GET peut tre bien être affiché tel quel dans ton navigateur, sans passé pas igoogle ou netvibes.
Heu je parle pas de l'intégration du widget dans la page, mais du fonctionnement du widget lui-même. Regarde par exemple le calendrier de netvibes : on peut changer le mode d'affichage (agenda / semaine / mois), ce qui modifie complètement les éléments et la façon dont ils sont présentés, mais ces modifications sont faites sans rechargement, donc Ajax.