Réactualisation de la page d'un chat.
phercule88
Messages postés
16
Statut
Membre
-
avion-f16 Messages postés 20367 Statut Contributeur -
avion-f16 Messages postés 20367 Statut Contributeur -
Bonjour,
J'ai réalisé un chat avec php/Mysql et j'ai un double problème qui se pose.
Les messages du chat sont tous enregistrés dans une bdd, et ne s'affichent sur l'écran de chat que les 10 derniers messages postés.
Voilà donc le problème dont je suis convaincu qu'il va se poser (mon chat n'est pas encore en ligne) : Par exemple, si quelqu'un poste un message depuis son ordinateur, celui-ci sera enregistré dans la bdd et s'affichera à son écran. Tout cela pourquoi ? parce que quand ce visiteur clique sur "Envoyer", sa page se recharge. Mais, à moins que je ne me trompe il n'y a aucune raison pour que la page se recharge chez les autres visiteurs (ceux qui utilisent d'autres ordinateurs). Et dans ce cas il ne verront pas s'afficher le message de notre tout premier visiteur.
J'utilise alors un meta refresh rafraîchissant ma page toutes les 5 secondes. Cela doit à mon avis régler mon problème (dites moi si je me trompe ).
Mais un autre problème apparaît alors : les visiteurs qui ont leur curseur placé dans la zone de texte où doivent être rédigés les messages, voient ce brave curseur disparaître à chaque rafraîchissemnt : en effet, quand on charge une page, le curseur ne se place pas d'emblée dans les zones de texte !
Pourriez-vous m'aider soit à trouver une autre solution a mon premier problème, soit à trouver une solution a mon deuxième problème ?
J'ai réalisé un chat avec php/Mysql et j'ai un double problème qui se pose.
Les messages du chat sont tous enregistrés dans une bdd, et ne s'affichent sur l'écran de chat que les 10 derniers messages postés.
Voilà donc le problème dont je suis convaincu qu'il va se poser (mon chat n'est pas encore en ligne) : Par exemple, si quelqu'un poste un message depuis son ordinateur, celui-ci sera enregistré dans la bdd et s'affichera à son écran. Tout cela pourquoi ? parce que quand ce visiteur clique sur "Envoyer", sa page se recharge. Mais, à moins que je ne me trompe il n'y a aucune raison pour que la page se recharge chez les autres visiteurs (ceux qui utilisent d'autres ordinateurs). Et dans ce cas il ne verront pas s'afficher le message de notre tout premier visiteur.
J'utilise alors un meta refresh rafraîchissant ma page toutes les 5 secondes. Cela doit à mon avis régler mon problème (dites moi si je me trompe ).
Mais un autre problème apparaît alors : les visiteurs qui ont leur curseur placé dans la zone de texte où doivent être rédigés les messages, voient ce brave curseur disparaître à chaque rafraîchissemnt : en effet, quand on charge une page, le curseur ne se place pas d'emblée dans les zones de texte !
Pourriez-vous m'aider soit à trouver une autre solution a mon premier problème, soit à trouver une solution a mon deuxième problème ?
A voir également:
- Réactualisation de la page d'un chat.
- Coco chat - Accueil - Réseaux sociaux
- Impossible de supprimer une page word - Guide
- Fermeture de Coco : les internautes à la recherche d'un remplaçant - Accueil - Réseaux sociaux
- Ouvrez cette page. dans le code de la page, modifiez la couleur de fond de la classe .pix. un code de 4 chiffres doit apparaître dans la grille. lequel ? ✓ - Forum Programmation
- Comment imprimer un tableau excel sur une seule page - Guide
1 réponse
La solution : AJAX.
Utilise cette technologie pour l'ajout du message (ainsi le t'chateur ne rechargera pas la page en cliquant sur 'Envoyer') et pour rafraichir la page avec setTime(2000,laFonctionQuiRaffraichie);.
Tu trouveras de nombreaux tutoriels sur Developpez.com.
Utilise cette technologie pour l'ajout du message (ainsi le t'chateur ne rechargera pas la page en cliquant sur 'Envoyer') et pour rafraichir la page avec setTime(2000,laFonctionQuiRaffraichie);.
Tu trouveras de nombreaux tutoriels sur Developpez.com.