Jump to content
Sign in to follow this  
aodot

Chat en Ajax/PHP/MySQL

Recommended Posts

Bonjour à tous,

Je me tente à la création d'un chat en Ajax et sotckage des messages dans une base de données.

DOnc très simplement j'ai créé 3 div :

1) liste des membres

2) liste des conversations entre membres

3) liste des messages liés à la conversation.

Jusque la rien de très compliqué, tout fonctionne très bien mais je me pose la question de la méthode utilisée.

Dans ces 3 div, j'utilise un setTimeout à 1 milliseconde pour que les changement soient quasiment instantanés.

Cependant, j'ai l'impression que cette méthode prend énormément de ressources et de plus, le fait que la div se recharge toutes les millisecondes, cela empêche 1/10 le clic sur un lien dans ce div.

Qu'en pensez vous ?

La fonction setTimeout est elle une bonne méthode ?

Comment avez vous développé votre chat ?

Un grand merci par avance.

Aymeric

Share this post


Link to post
Share on other sites

Salut,

Ni php côté serveur, ni javascript côté client, ne sont adaptés pour faire un chat.

Le seul truc que tu peux faire, avec php/javascript, c'est plutôt une sorte de "tag wall", ou de "shout box", mais pas un vrai chat.

Donc pour un tag wall/shout box, effectivement, tu peux utiliser le setTimeout de javascript. Mais cetainement pas tous les millièmes de seconde ! Disons une fois toutes les deux ou trois secondes... maximum... tout dépend du contexte (si le chat est sur une page dédiée, tu peux le faire plus fréquemment, mais s'il est sur ta page d'accueil, il faut y aller doucement) (ça dépend aussi du nombre de clients connectés, du serveur, etc)

Share this post


Link to post
Share on other sites

Ni php côté serveur, ni javascript côté client, ne sont adaptés pour faire un chat.

Le seul truc que tu peux faire, avec php/javascript, c'est plutôt une sorte de "tag wall", ou de "shout box", mais pas un vrai chat.

Merci pour votre réponse.

Je suppose que non, mais auriez vous une autre piste à m'indiquer pour le développement d'un chat ? Captain_torche parle des WebSockets, je me penche dessus.

Cordialement.

Aymeric

Share this post


Link to post
Share on other sites

Renseigne-toi là-dessus, mais ne l'utilise pas encore : à ma connaissance, il n'y a que les navigateurs à base de webkit (Safari, Chrome) qui le gèrent nativement.

Share this post


Link to post
Share on other sites
Lorsque les WebSockets en HTML5 se seront démocratisés, ça sera sans doute plus simple

Je ne savais pas que c'était prévu ! C'est cool :) Merci pour l'info.

Je suppose que non, mais auriez vous une autre piste à m'indiquer pour le développement d'un chat ?

Ça dépend, tu veux faire quoi exactement comme style de chat ?

Share this post


Link to post
Share on other sites

Ça dépend, tu veux faire quoi exactement comme style de chat ?

J'ai un site avec des membres et je souhaite créer un chat dans lequel les membres puissent parler entre eux (un peu style facebook quoi).

Je ne sais pas quelle méthode utiliser...

Merci par avance.

Aymeric

Share this post


Link to post
Share on other sites
(un peu style facebook quoi).

Si ma mémoire est bonne (ça fait un bail que j'ai fermé mon compte facebook), sur facebook, ce n'est pas un chat classique, c'est plutôt ce qu'on pourrait appeler une "messagerie instantanée". On peut y discuter en privé entre "amis", mais il n'y a pas de "salon général" où n'importe qui peut parler avec n'importe qui d'autre.

Par ailleurs, et toujours si ma mémoire est bonne, cette messagerie instantanée sur facebook fonctionne en bas de page : c'est à dire qu'on peut continuer de discuter tout en surfant sur le site. Il n'y a donc pas une page dédiée au chat (ce qui complique la chose sur certains points et la facilite sur d'autres).

Il faudrait vraiment que tu commences par te faire une idée plus précise de ce que tu souhaites faire. Un chat n'est pas quelque chose de simpliste à mettre en place, alors si ton cahier des charges se résume à « un peu style facebook quoi », tu ne seras pas en mesure de choisir la bonne solution.

Donc déjà, il faut que tu décides si le chat doit être sur une page dédiée, ou s'il reste en bas de page et utilisable tout en naviguant sur le site, car l'approche est complètement différente.

Share this post


Link to post
Share on other sites

Il existe pas mal de scripts de chat en AJAX, il me semble que les meilleurs donnent l'impression d'être aussi réactif qu'un traditionnel IRC.

Je crois que le chat suivant (http://chat.developpez.com/) est basé sur le projet open-source AnoChat (php/javascript) et le résultat est excellent.

Share this post


Link to post
Share on other sites

Perso j'apprécie ce chat qui fonctionne très bien, il est très fluide et s'intègre à de nombreuses applis
/>https://blueimp.net/ajax/

@++

Share this post


Link to post
Share on other sites

Je fais juste remonter le sujet pour faire part d'un truc que je n'ai découvert que récemment, et qui semble tout à fait indiqué pour développer un chat en javascript, et d'une façon générale pour une communication fluide client/serveur :

Node.js

Cela permet de communiquer par socket entre le client et le serveur. A approfondir :)

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×
×
  • Create New...