Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

CHAT AJAX


Information sur la source

Catégorie :Divers Classé sous : ajax, session, chat, xmlhttprequest, irc Niveau : Initié Date de création : 16/08/2006 Date de mise à jour : 17/08/2006 01:38:25 Vu / téléchargé: 29 084 / 2 865

Note :
9,63 / 10 - par 8 personnes
9,63 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (39)
Ajouter un commentaire et/ou une note

Description

Cliquez pour voir la capture en taille normale
Petit chat Ajax dans le même genre que IRC. Ainsi les commandes /me, /msg, /kick, /mode y sont inclut. Pour le fonctionnement, j'y ai été avec les sessions pour gérer les utilisateurs connectés. Ainsi pour savoir quelle utilisateur est en ligne je lit les sessions des utilisateurs qui ont été modifié il y a au moins 30 secondes. Pour les messages ils sont stockés dans une table sql. Pour transmettre les données entre le serveur et le client j'ai utilisé le xml, car il est relativement facile à analyser et plus fiable quoiqu'il m'a fallut au moins 5-6 try catch afin de rendre le script d'analyse stable. Pour les configurations, les mots de passe des admin sont dans le script ajax.php au début, pour les modes des admins c'est à la même place. Aussi si le path que retoure la fonction session_save_path est faussé ajuster là ou reécrivez le au début du fichier ajax.php pour la variable $defaultPath. Cette dernière modification est nécessaire sur certains serveurs et très rarement nécessaire en local. Pour le SQL, il vous suffit d'exécuter le fichier db.sql dans votre base de donnée mysql.
 

Source

  • <?php
  • if ($toi == "intéressé")
  • {
  • header('Content-type: application/force-download');
  • header('Content-disposition: attachment;filename=lezip');
  • @readfile("lezip.zip");
  • }
  • ?>
<?php
if ($toi == "intéressé")
{
    header('Content-type: application/force-download');
    header('Content-disposition: attachment;filename=lezip');
    @readfile("lezip.zip");
}
?>

Conclusion

Côté affichage il se peut que pour certain navigateur les éléments soient disproportionner. Pour l'instant j'ai fait des correctifs pour ie et pour firefox seulement. Je ferais les correctifs d'affichage pour opéra une fois que je l'aurais installé ...

Aussi il se peut que le script fonctionne mal sur certains servers, car il vous refusera l'accès au fichier temporaire.
 

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Historique

16 août 2006 23:24:50 :
Doublon de l'élément mode dans l'enumération enlevé
16 août 2006 23:25:26 :
Doublon de l'élément mode dans l'enumération enlevé
17 août 2006 01:38:25 :
Doublon dans le fichier db.sql

Commentaires et avis

signaler à un administrateur
Commentaire de davwart le 16/08/2006 22:35:07

Bonjour

vraiment pas mal cette source !
je l'ai testé rapidement et elle fonctionne bien.
Qques petites remarques:
- pkoi y'a t-il deux fois le type "Mode" dans ton enum de ta base de données ?
- peut etre expliquer qu'il faut ajouter un dossier "users" dans le repertoire web du tchat
- personnellement, je ne suis pas fan de la lecture du dossier de stockage des sessions (à noter: donner les droits en lecture sur ce dossier). Pkoi ne pas utiliser le dossier "users" pour savoir qui est en ligne ?


Bonne source ! félicitations !

signaler à un administrateur
Commentaire de Arto_8000 le 16/08/2006 23:19:17

J'ai utilisé les sessions parce qu'ils sont automatiquement modifié par le script lorsque que l'utilisateur fait une requete pour avoir les messages et le dossier users c'est rajouter après dans mon projet afin de pouvoir changer le mode des utilisateurs. Pour le doublon du mode propablement une erreur de ma part quand j'ai transféré mon projet vers mon nouvel ordinateur ... Pour le dossier users je croyais l'avoir zippe dans le zip. Je fais les modifications.

Merci de ton commentaire.

signaler à un administrateur
Commentaire de ludovicanceaux le 17/08/2006 07:31:32

Vraiment pas mal du tout en plus tout marche du premier coup il n'y a pas à chercher d'erreur, même la base sql est là , & puis la source vraiment bien!!!!!!

signaler à un administrateur
Commentaire de Eliays le 17/08/2006 17:36:49

Un peu lents :)

signaler à un administrateur
Commentaire de Eliays le 17/08/2006 18:12:27

Sa ne marche pas.. "erreur sur la page" quand on valide le pseudo et rien.
Sur ftp free.fr

signaler à un administrateur
Commentaire de Arto_8000 le 17/08/2006 23:16:33

Eliyas, il se peut que certains serveurs supportent mal se script, car il nécessite de lire le dossier des fichiers session. Aussi il se peut que le problème soit avec le session_save_path tel que mentionné dans la description ...

Si le problème est autre il serait bien que tu me donne plus de précision, car erreur sur la page, ça dit pas grand chose.

signaler à un administrateur
Commentaire de Eliays le 18/08/2006 00:14:59

sur free il faut creer un dossier nommer "sessions" qui stock les session.que faut t'il modifier dans le code? je pensse que sa vient de la.

signaler à un administrateur
Commentaire de Arto_8000 le 18/08/2006 02:10:09

Les sessions sont déjà gérées par apache, ce que mon script fait c'est lire les fichiers généré par apache pour les sessions. Le dossier où se trouve les sessions est généralement le même que les fichiers temporaires. Le problème que je parlait est que le path que retourne la fonction session_save_path ,pour trouver où sont les fichiers sessions, ne retourne pas toujours une valeur utilisable dans un script. Par exemple sur un serveur le path retourné est "1;/usr/export/tmp", ce qui doit être modifié pour "/usr/export/tmp/". C'est ce genre de modification qui doit être apporté.

Il se peut aussi que ton hébergeur web te refuse l'accès au fichier temporaire. Si c'est le problème je peux rien y faire.

signaler à un administrateur
Commentaire de speedylol le 19/08/2006 19:42:40

bonjour cela ne fonction pas chez lycos erreur dans la table et en local easyphp 1.6 aussi sorry

signaler à un administrateur
Commentaire de Arto_8000 le 20/08/2006 20:53:54

Ce qui m'aiderait le plus c'est que vous regardiez comme il le faut les indications que j'ai laissé et me donné le plus détails possible sur les problèmes rencontrés, car juste me dire il y a un problème avec le script ça me dit rien ... qu'est qui ne  marche pas bien dans ce que j'ai fait ? Donné les codes d'erreurs, ce qui est retourné, ...

signaler à un administrateur
Commentaire de dragon le 21/08/2006 04:49:32

je sais pas si c'est moi qui comprend mal, mais j'ai tout copié dans un répertoire de mon serveur easyPHP. J'ai ouvert le chat et ça m'ouvre un textbox. Jusqu'ici pas de problème. Dès que j'entre un nick, faut qu'il soit en minuscule, sinon ça écris "Nom dutilisateur invalide ou mauvais". Mais en minuscule, ça passe.

Ensuite, en entrant le nick en minuscule, ça crée un fichier "waxime.txt". donc parfait, ça marche .... sauf rien. Ça bloque là avec Entrez désactivé et aucun chat qui s'ouvre ???

http://travian3.game-server.cc:8080/chat/

signaler à un administrateur
Commentaire de speedylol le 21/08/2006 11:54:20

voilà regarde ce que cela donne sur lycos sur http://membres.lycos.fr/speedcomputer

rien ne ce passe

CREATE TABLE message (
  msg varchar(150) NOT NULL default '',
  author varchar(14) NOT NULL default '',
  type enum('Text','Mode','Action','Kick','Quit') NOT NULL default 'Text',
  time int(11) NOT NULL default '0',
  id int(11) NOT NULL auto_increment,
  PRIMARY KEY  (id)
) TYPE=MyISAM;

et voila comment j'ai installé la table et cela est bien dans la table(INSERT INTO `message` VALUES ('Hidden Text', 'a', 'Text', 1, 1);)

pq cela ne fonction pas stp???

signaler à un administrateur
Commentaire de eroan78 le 21/08/2006 19:03:48

Bonjour à tous, j'ai tenté d'installer le script sur mon serveur mais, malheureusement, il est configuré avec une gestion des sessions par cookies. Donc, impossible de le faire fonctionner. Prévoyez-vous une version améliorée qui fonctionne sans sessions? Merci d'avance pour vos réponses.

signaler à un administrateur
Commentaire de Arto_8000 le 22/08/2006 22:48:32

Dragon -> Assure-toi d'avoir aussi executez le code sql. Aussi, qu'est que le lien que montre à a faire avec ma source ... C'est pas mon  script de chat et ça marche pas. Pour l'entré désactivé, c'est pour évité que les gens envoie des tonnes de requêtes au serveur alors qu'une seul suffit. Si il reste bloquer c'est que la connection avec le serveur ne se fait pas ou se fait mal. Assure-toi que ton navigateur soit récent, car les ancient navigateurs ne supporte pas les xmlhttprequest.

Speedylol -> L'erreur vient porbablement du fait le serveur ne t'autorise pas à créer des base de données. Et de même les tables ne se crée pas à la bonne place ou  ne se crée pas du tout. Je vais rajouter des explications comment procédé plus tard.

Eroan78 -> Pour l'instant, avec le système que j'ai mis il se doit de géré les sessions côté serveur, pour qu'il soit possible avec les sessions donc les valeurs sont stockés côtés clients il faudrait que je modifie la façon donc il gère les utilisateurs et cela va prendre beaucoup de temps, mais je vais mis m'être.

signaler à un administrateur
Commentaire de eroan78 le 23/08/2006 09:23:44

Merci bien, je sais que c'est du boulot mais je ne dois pas être le seul à utiliser des sessions de ce type ;)

Je te souhaite bon courage, et espère vraiment que tu vas y arriver... Ca me permettrai d'offrir un vrai chat à mes visiteurs...

signaler à un administrateur
Commentaire de Arto_8000 le 23/08/2006 23:35:38

Eroan78 -> Au pire tu peux utiliser des applets ou autre chose avec le système IRC qui est très utilisé , plusieurs sites utilisent ça, comme codes-sources ;)

signaler à un administrateur
Commentaire de eroan78 le 24/08/2006 11:43:34

C'est effectivement une solution mais j'aime bien être entièrement maître de ce que j'installe sur mon site, et pouvoir modifier les scripts à ma guise etc... Avec IRC le problème est que je ne propose qu'une interface de connexion vers un chat et pas le chat en lui même...

signaler à un administrateur
Commentaire de kegi le 27/09/2006 17:31:38

Nice,
beau travail, facile d'utilisation.

Je vais probablement l'adapter et l'utiliser sur www.Circuit500.com et www.ActionCommando.com.

Cordialement,
Kevin (kevin@circuit500.com)

signaler à un administrateur
Commentaire de Arto_8000 le 27/09/2006 21:56:49

C'est correct en autant qu'il reste un petit quelque chose qui dise que c'est moi qui l'ai fait, sinon je ne vois aucune objection à ce que tu l'utilises comme bon te semble.

signaler à un administrateur
Commentaire de nmns le 04/10/2006 15:40:27

Salut

Et bien sur mon serveur dedie je ne peux me connecter je reste bloquer sur index.html (IE sous ubuntu !)
j'ai procédé a la verification des droits et c'est ok.
J'ai modifié l'endroit ou se trouve mes fichiers temporaires aussi.

signaler à un administrateur
Commentaire de Arto_8000 le 05/10/2006 22:12:57

Ce qui m'aiderais plus c'est de dire c'est quoi l'erreur retourner par le navigateur, parce que pour l'instant ça me dis absolument rien.

As-tu désactiver des fonctions sur Apache ? As-tu fait les set up pour sql ? As-tu lus la description que j'ai pris le temps d'écrire et dans lequel je présentes ce qu'il faut faire pour l'installer comme il le faut, ainsi que quelques problèmes que l'ont peut recontrer et comment les résoudre ?

signaler à un administrateur
Commentaire de sabbye le 19/11/2006 02:08:12

je dois dire que je ne sais pas comment l'installer alors un petit coup de main ne serais pas de refus!

signaler à un administrateur
Commentaire de Arto_8000 le 19/11/2006 22:18:45

Premièrement tu mets tous les fichiers qui se trouve dans le zip dans le dossier que tu veux et que tu peux bien évidement ouvrir via ton serveur apache. Ensuite pour les bases de données mysql, les rêquetes nécessaire pour créer les tables se trouve dans le fichier db.sql. Aussi il faut modifier les lignes 172 et 173 du fichier ajax.php avec le nom d'utilisateur et le mot de passe que tu utilises avec ton serveur. Normalement tout devrait bien rouler à partir de se point ci, si tout est bien fait. Sinon tu peux poser des questions en me spécifiant bien les problèmes rencontrés avec les erreurs qui sont retournées afin que je puisse faire des correctifs le plus tôt possible.

signaler à un administrateur
Commentaire de Franquito le 22/12/2006 00:02:41

bonsoir !

Voici les deux erreurs que je rencontre sur mon serveur LAMP:

- données incompréhensibles après l'élément de document ajax.php?action=l... (line 2)
<b>Warning</b>: opendir(/var/lib/php5/) [<a href='function.opendir'>function.opendir</a>]: failed to open dir:

- Permission denied in <b>/var/www/chat/ajax.php</b> on line <b>18</b><br /> ^ resultat.getElementsByTagName("LoginOk").item(0) has no properties

signaler à un administrateur
Commentaire de Arto_8000 le 23/12/2006 01:50:47

Ce doit être à cause de l'accès des fichiers sessions. D'ailleur je suis en train de recoder un partie du chat pour ne plus à avoir besoin des fichiers sessions, car ils causaient beaucoup de problèmes pour beaucoup de serveur. D'ici une ou deux semaines une premiere version de la version amélioré devrait être posté.

signaler à un administrateur
Commentaire de Franquito le 23/12/2006 22:26:42

ok merci arto, c'est cool :)

signaler à un administrateur
Commentaire de Eliays le 25/12/2006 16:06:19

Up, vivement la nouvelle version =)

signaler à un administrateur
Commentaire de Arto_8000 le 25/12/2006 17:27:26

Bon voici une petite liste de ce que je vais rajouter, modifier ainsi que où j'en suis rendu :

- Les sessions ne sont plus utilisé au lieu de cela j'utilise des fichiers texte pour stocké les données ( 100% fini )
- Commande "nick" rajouter pour changer de nom ( 100% fini )
- Service NickServ pour géré les nom des utilisateurs, les fonctions implémentées sont identify, register, ghost ( 100% )
- Service AdminServ pour les options des administrateurs ( 0% fini )
- Ajout d'un fichier d'information à propos du projet ( 50% fini )
- Modification de la commande msg pour pouvoir envoyer des messages privés ( 100% fini )
- Interface, choix du thème et correctif pour le problème d'affichage sur opéra ( 0% )
- Pour certaine fonction la sécurité est à revoir, car il y a des possibilités d'intrusion ( 0% fini )

Avec tout cela le chat sera très complet. Sur ceci joyeuses fêtes.

signaler à un administrateur
Commentaire de Eliays le 31/12/2006 17:07:33

Up, on veux des nouvelle :)

signaler à un administrateur
Commentaire de Arto_8000 le 31/12/2006 17:50:45

Il me reste le choix de thème qui me cause des problèmes sinon tous est fini. Je l'ai mis en ligne pour ceux qui veulent le tester.

http://holyscript.phpnet.us/chat/

et pour toutes les informations au sujet du chat :

http://holyscript.phpnet.us/chat/info.html

signaler à un administrateur
Commentaire de Eliays le 31/12/2006 17:57:42

J'ai une chtite sugestions a te faire, rajouter une fonction qui permet de creer/rejoindre avec la comamde /join #<canal>  :)

signaler à un administrateur
Commentaire de Eliays le 01/01/2007 18:50:31

Coucou, quand sera disponible en telechargement la v2? Merci :)

signaler à un administrateur
Commentaire de Arto_8000 le 02/01/2007 17:22:17

Il l'est déjà ...

http://www.phpcs.com/code.aspx?ID=40934

signaler à un administrateur
Commentaire de ludovicanceaux le 25/05/2007 15:47:58

bjr, ton script est super, mais  j'ai essayé de décoder ton code, c cho j'aurais voulu savoir comment, ou par quel fonction tu passe pour récupérer les message d'un post en direct sans le rechargement de celui qui receptionne!!!! je sais pas si j'ai bien expliquer!!!!
car en fait j'aimerai l'adapter pour faire un fil RSS, j'ai créer mon  fichier xml, ma base SQL etc... mais quand j'affiche mon truc sur mon index ca me lit tout ce qu'il à pris o chargement, si entre temps j'insère un autre rss, il faut obligatoirement que je recharge mon index!!!!

merci d'avance de ton aide (tu vas me sauver du sucuide là lol)

signaler à un administrateur
Commentaire de Arto_8000 le 25/05/2007 22:52:54

Le script est fait avec AJAX qui est un objet javascript qui permet de faire de requête sur le même site. Maintenant ça devient de plus en plus connu et populaire. Tu peux facilement trouvé des tutorials sur le sujet en cherchant sur google.

signaler à un administrateur
Commentaire de ludovicanceaux le 26/05/2007 04:42:48

j'ai cherché mais j'ai rien trouvé à ce sujet!!!!! je voudrais juste savoir comment on peut faire sans clicker nul part, pouvoir recharger des infos depuis une base sql ou un fichier xml!!!!

signaler à un administrateur
Commentaire de lotfi2benak le 02/08/2007 05:45:08

merci pour cette belle source!

en localhost sa marche tres bien

mais sur my10gb.com (gratuit) sa marche pas il veux pas enregister sur la base de données!

j'ai essayer sur free , la meme chose!

que doi-je faire ? sur tout pour my10gb.com !!!

signaler à un administrateur
Commentaire de Arto_8000 le 02/08/2007 16:35:37

Faut changer un peu le fichier db.sql pour que ça marcher. Habituellement sur des hosts, les base de donnée tu ne peux pas les créer à la volé dans une requête SQL. Regarde les indications que ton host laisse pour en ajouter. Ensuite ne fait qu'exécuter la requête pour crée la table et le champ.

Ensuite ligne 172, 173 du fichier ajax.php modifie ces lignes pour que ça soit tes configurations.

Aussi il y a une version 2 de ce chat avec plus d'option, je t'invite à le regarder.

http://www.phpcs.com/codes/AJAX-CHAT-V2_40934.aspx

signaler à un administrateur
Commentaire de geantfire le 08/12/2007 14:12:21 8/10

C'est bien fait

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

IRC et PHP [ par spEps ] Salut,J'ai mis un chat IRC avec BestOfChat.comsur mon site et je souhaiterais afficher lenombre de connectés avant qu'on entresur le chat, c'est à dir XmlHttpRequest (AJAX) [ par BenXbox ] Salut à tous, Je cherche à actualiser une page avec le XmlHttpRequest(AJAX) toutes les 20 secondes. Cette page s'appel EnLigne.php Merci d'avance. Pb de sécurité avec Ajax et XMLHttpRequest [ par cz1702 ] Bonjour &#224; tous,est il possible d'ouvrir une page sur un autre domaine que celui du site en cours avec XMLHttpRequest (sans contraindre l'utilisat Performance ajax/php [ par sbool ] Bonjour, Si dans head j'ai un setInterval (5s) qui appele cette page php $session = xif (session = 1) { faire 3 tonnes de script;}Est ce que le serveu Chat en php [ par Ramboul ] Salut,Je cherche un tchat en php pour mon site car j'ai déja un tchat mais il requiert d'avoir l'applet java.J'aimerai qu'il redeirige vers irc.quaken salon de chat IRC [ par amineflash ] Salut les amis... Je veux intégrer un salon de chat multi-utilisateur avec IRC dans mon site, et je sais pas comment faire. Si vous connaissez commen AJAX PHP send var [ par cedriclomb ] Bonjour,Bon la j'y pige que couik !Alors voila le problème, je cherche a envoyer un fomulaire à PHP avec AJAX et une méthode POST, j'ai fait des reche navigation avec ajax [ par speedylol ] bonjour je me demandais si quelqu'un aurais une idée pour changer la fin du script pour naviger avec le centre dans une veuille de style css a la GET Variables SESSION vs espace disque [ par dbeck ] Bonjour,   voici la mise en situation: Vendredi dernier le serveur web que j'utilise à manqué d'espace disque, et mon programme à commencé à tourner e Durée de vie des variables SESSION [ par dbeck ] Bonjour,       Mon problème:          Sur mon site, j'utilise les variables SESSION. Je me connecte dessus et je réduit la fenêtre et j'y retourne 3 h


Nos sponsors

Sondage...

CalendriCode

Janvier 2009
LMMJVSD
   1234
567891011
12131415161718
19202122232425
262728293031 

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,484 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.