Page 1 sur 2
Réactualisation partielle
Posté : 26 avr. 2007, 12:16
par thehawk
Bonjour pour un projet de chat j'aimerai que la zone des messages ce réactualise automatique (environ toutes les secondes) mais pour alleger la charge du serveur j'aimerai actualiser que certaines partie , je suis a peu près sur que cela est possible en javascript or je suis un vrai une bille en javascript, donc je me renseigne sur les possibiltés avant de coder donc voila j'avais songer a rassembler l'affichage des message dans une fonction php et c'est cette meme fonction que j'aimerais actualiser periodiquement
Je connais des script de réactualisation mais pour une page entier et pas pour une partie ...
Merci de votre aider
thehawk
Posté : 26 avr. 2007, 13:18
par orgerix
Je te conseillerai plutot de t'orienter vers AJAX vu qu'il y a interaction avec le serveur. Mais bon, c'est tout ce que je peux te dire, vu que je suis au même point que toi

Posté : 26 avr. 2007, 13:33
par thehawk
enfaite j'avias reflechis a quelque chose qui réactuliserai une fonction php peut etre avec des id non ?
et pour le azax pourquoi pas mais je ferai tous le reste en php c'est juste cette partie que je veux faire dynamique ^^
[/code]
Posté : 26 avr. 2007, 13:39
par orgerix
Vu que le PHP est un language serveur, tu ne pourrai rien faire. Une fois la page envoyé, il n'y a plus de dynamisme.
Pour réactualiser la page, tu peux utiliser une fonction javascript qui réactualise au bou d'un certain temps, mais ca implique recharger toute la page, donc un débit important.
D'ou l'AJAX, qui permet d'actualiser uniquement la discution.
Posté : 26 avr. 2007, 13:45
par Sékiltoyai
Disons que c'est une mauvaise approche d'associer AJAX avec réactualisation. Car la réactualisation juste du bloc de chat, même si c'est un bon début, reste insuffisant, car ca demande des transferts de données encore trop importants.
L'idéal, c'est de télécharger juste les données dont on a besoin, à savoir les messages. Là ca donnera un bon résultat, et des transferts minimaux de données.
Concernant la difficulté de l'AJAX, disons que ce n'est pas super simple, car il faut réussir à coder une application qui marche pour tous les navigateurs. Mais je crois que des frameworks existent pour ceux qui n'ont pas le temps, l'envie, ou les compétences pour le coder eux mêmes.
Posté : 26 avr. 2007, 14:14
par thehawk
pour le debit de données j'ai envie de crée un fichier txt qui contiendrait les messages mais le seul souci que j'ai est de faire une réactualisation ... etc le reste je me débrouille ^^ mais vu que je ne conait pas grand chose a l'ajax ni au java ni javascript d 'ailleur ... , je ferai le tout en php sauf l'affichage ...
qui extrairai d'un fichier txt les message et les afficherais d'ou ma demande d'aide ici
Posté : 26 avr. 2007, 14:18
par Sékiltoyai
Bah crois moi, quand tu auras moult messages, ca va être lourd, aussi bien pour le navigateur que pour la connexion...
Posté : 26 avr. 2007, 14:22
par thehawk
donc quelle serait la meilleure solution à ton avis ?
Posté : 26 avr. 2007, 14:24
par Sékiltoyai
La meilleure solution serait d'interroger (en Ajax bien sur) régulièrement un script php pour qu'il envoie les messages envoyés entre le dernier message récupéré et l'instant courant.
Posté : 26 avr. 2007, 14:25
par thehawk
tu aurais des exemples ? tutos? car vu mon ignirance totale de l'ajax je ne sais pas comment my prendre ^^
Posté : 26 avr. 2007, 14:31
par Sékiltoyai
Bah, en fait, dans l'hypothèse où tu voulais réupérer un fichier texte pour récupérer la totalité des messages, ici c'est le même procédé, sauf que tu ne télécharge pas un fichier texte, mais les données rendues par un script php. Suffit juste que le script identifie chaque connexion pour savoir exactement ce qu'il doit envoyer...
Après ce qu'il te faut, ce sont des tutoriels ajax, et il y en a un peu partout (regarde sur developpez.com). Sinon, tu peux aussi t'inspirer du code de mon horrible site

:
http://sekiltoyai.free.fr (le javascript est à priori correct, mais il merde un peu sur safari...)
Posté : 26 avr. 2007, 14:52
par thehawk
j'ai une tite question est ce qu'il ya besoin d'installer quelque chose de particulier pour utiliser ajax sur un serveur php car lorsque je teste en local ca marche pas
Posté : 26 avr. 2007, 14:55
par Sékiltoyai
ca dépend comment tu le code.
Si tu utilises certaines fonctions xml de php, tu peux avoir besoin de modules, mais tu peux t'en passer, et dans ce cas tu nas besoin de rien d'autre qu'un serveur http avec php, un navigateur, et éventuellemnt une base de données selon la manière dont tu implémente la technique...
Posté : 26 avr. 2007, 14:56
par thehawk
je suis entrain de faire ce tuto est ... il ne s'affiche juste que la bouton c tout ...
http://siddh.developpez.com/articles/ajax/ => le tuto ^^
Posté : 26 avr. 2007, 15:01
par Sékiltoyai
En l'occurence ici il faut php+MySQL, et avec un navigateur récent et qui accepte le js bien sûr...