vous pouvez tester l'application sur la page suivante :
http://www.minotor.net/flash/chat/
FONCTIONS :
- CHAT en flash-php-sql.
- 10 utilisateurs simultanés maximum, pas de saturation.
- Gestion des smileys par police integrée à la source.
Le zip (122 Ko) contient :
-Un fichier install.php pour creer les 2 tables : nicks et discussion
(changer auparavant les parametres de php/prive/connexion.php)
- les deux typos utilisées
(les smileys de la 2eme typo sont sur les lettres ABCDEFG majuscules).
-La page index du chat et son swf, puis
3 pages dans le dossier php :
-page de login
-page de chat (celle appelée toute les 2 secondes)
-page de sortie, appelée sur un body onUnload de l'index,
(donc si on ferme la fenetre, OU si on l'actualise)
qui provoque le logout.
ORDRE POUR L'INSTALATION :
1) Ouvrez le fichier php/prive/connexion.php
Il faut changer ces 3 parametres :
$user="";
$pass="";
$db="";
Souvent $user et $db sont identiques, c'est le nom d'utilisateur de votre base.
$pass est le mot de passe pour acceder à votre base.
2) Copier tous les fichiers (dont le fichier de connexion parametré...),
sauf le dossier "sources" sur le site.
3) ouvrez alors simplement le fichier "install.php" dans votre navigateur, celui çi va créer
les deux tables dont le chat a besoin. Ensuite, supprimez ce fichier "install.php" de votre site !
4) y'a pas de 4...
Le design du chat est facile à modifier.
fonctions du php:
Au login :
1) verifie si des nicks inactif sont restés, les efface de la base,
et si il n'y a plus personne, netoie la base 'discussion' avant de rentrer.
2) verifie si il y a moins de 10 personnes connectées au chat, pour eviter
la saturation du server par les requettes php... (10 c'est peut-être déjà trop,
je me rend pas trop compte).
3) verifie si le nick proposé n'existe pas, si il n'est pas egal à une chaine vide.
A chaque requette du chat (toute les 2 secondes environ) :
1) renvoie la liste des nicks connectés.
2) verifie si celui qui envoie la requette fait toujours partie de cette liste.
3) toute les 4 minutes : met à jour sa date dans la table des nicks.
(au pire des cas, au bout de 4 minutes qq'un qui n'a pas été deconnecté
correctement sera effacé de la table par le prochain à rentrer dans le chat,
c'est une securité supplementaire).
4) verifie si un message est à rajouter dans la discussion.
5) renvoie tous les messages qui n'ont pas déjà été envoyés dans l'ordre.
Le logout :
Il peut être manuel (dans flash), par le body onUnload qui ouvre 'sortir.php'
dans un popup qui se ferme tout seul.
>> detruit la session et efface la ligne de la table des nicks.
J'ai finalement laissé la possibilité d'ouvrir plusieurs fenetres de chat, sous
differents pseudo à la fois, pour pouvoir le tester tout seul...
Le flash, gère les < , > , ' , \ avant l'envoie à php.
Tout est fait en setInterval, et on attend le retour des LoadVars pour
relancer un setInterval de 2 secondes.
gestion de la touche entrée pour le confort.
gestion des smiley par l'integration d'une typo smiley perso.
J'espère que je me suis pas trop embrouillé dans mes explications...