Adaptation Script Tchat

Répondre
Athena78
le 15/01/2004 à 23:59
Athena78
slt,

Je suis totalement novice en php et je suis en train de preparer un site de rencontre comprenant un forum, des petites annonces et un Tchat.
Pour les 2 premieres rubriques, c ok mais pour le tchat je galere.

J'ai récupéré un script qui a l'air pas mal (MYSQLCHAT Version 1.00) et je souhaite l'adapter car il ne permet pas un affichage des participants actuellement en ligne (lol).

Je dipose dons actuellement de 2 pages .php :
- affichage.php pour afficher les messages
- message.php pour taper les messages

Je dispose de 1 table :

TABLE chat (
id int auto_increment primary key,
pseudo varchar(10),
message text,
date datetime,
formatage varchar(10),
attach varchar(30),
temp int);

et de 1 page de frame pour combiner le tout.

je souhaite donc creer une page user.php mais mon probleme est le suivant :

Comment actualiser la liste des participants à chaque connexion/deconnexion ou au moins "rafraichir" la liste toute les 30 secondes par exemple ?

Actuellement, ma page affichage.php contient une fonction permettant de supprimer les messages datant de + de 15 mn et je pensais donc m'appuyer sur cette fonction et l'adapter à ma liste de participant mais je ne sais pas par ou commencer :

tm=microtime();$tm2=explode(" ",$tm);$tm3=$tm2[1];
$query = "DELETE FROM $table WHERE (temp+900)<$tm3";
mysql_query($query,$ide)


J'ai egalement songé m'inspirer du 'comment faire" "compter les visiteurs connectés" mais je ne sais pas non plus si cela peut fonctionner en sachant que ma page user.php apparaitra dans une frame et que le rafraichissemnt tout les 3 secondes de la partie message peut interferer (non ?) dans le systeme justement basé sur le chargement des pages.

Je sens que je suis pas loin mais avant de me lancer dans les grandes manoeuvres, je voudrais avoir votre avis ou vos conseil.

C'est le premier script php de ce type que je manipule alors je suis un peu larguée sur les fonctions de calcul automatique HELP !

MERCI
Athena78
le 16/01/2004 à 00:08
Athena78
Juste un petit ajout,
je souhaite par la suite permettre au participant d'avoir une fiche profil, consultable depuis la suite (systeme de page principale-detail) je pense savoir comment faire cela comme une grande...
mais c'est pour au cas ou cela jouerai dans votre façon d'envisager une solution à mon probleme.

Merci à vous de m'avoir lu.
LA GLOBULE
le 16/01/2004 à 00:09
LA GLOBULE
Pour le probleme du refresh, regarde par ici

(PS : fait attention , ce genre de refresh est tres mal vu par les hebergeurs => surcout de bande passante enorme).

Et en ce qui concerne les user, le script pour afficher le nb de connectes en ligne est une bonne base.

PS : ce n'est pas la peine de taper des gros "HELPPP" dans le titre du sujet smiley
Athena78
le 16/01/2004 à 01:07
Athena78
merci pour le lien je vais pouvoir avancer.

dis moi j'avais une idée comme ça au passage,

pour se qui est d'afficher les participants qui entre, j'ai pas trop de souci en "combinat" ma base de donnée + unn refresh sur les infos entrantes.

Pour se qui est de gerer les sessions je suis pas au top alors je me disais (en schematisant avec mon petit cerveau novice et femelle de surcroit !) :
puis-je inserer une fonction qui s'active à la fermeture de la page "main" (dans laquelle j'appelle tous mes script) qui va automatiquement supprimer l'enregistrement créé à l'ouverture ?

Sinon, je pensais mettre une pop up qui s'active à la fermeture si la personne n'utilise pas le bouton deconnexion lui demandant "voulez vous quitter ?" et qui permettrait d'activer la requete de supression de l'IP.

Bon tu dois te marrer parceque ca fait un peu bidouille de la fille qui connait que dalle et tu as raison !!lol lol
Je suis autoditacte pour à peu près tout mais j'aime bien comprendre ce que je bidouille lol

Je continue mon exploration des fonctions dans ton manuel et j'espere que tu m'as comprise.

A+
LA GLOBULE
le 16/01/2004 à 01:55
LA GLOBULE
Tu ne pourras jamais forcer un utilisateur a clicker sur un bouton deconnexion.

Il faut faire sans ca, vu que tu n'es pas sur que le mec clic dessus.
Athena78
le 16/01/2004 à 01:58
Athena78
j'ai une piste dites moi ce que vous en pensez :
(pour le cas ou la personne n'utilise pas le bouton deco et ouvre donc la pop up de sortie)

1) je recupere l'adresse pour bien identifier l'IP sortante
$ip_client = $REMOTE_ADDR;


2) si le visiteur click sur "Cliquer ici pour vous deconnecter" (JE BLOQUE LA lol)

3) j'efface la ligne correspondant à son IP
$sql = 'DELETE FROM us_online WHERE ip= "'.$ip_client.'"';

4) je lance la requete
$req = mysql_query($sql) or die ('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());

je continue à fouiller merci les gars
LA GLOBULE
le 16/01/2004 à 02:03
LA GLOBULE
Ben si le mec ne clique pas sur le bouton de deco, à l'ouverture du pop up, efface direct les trucs nan ?

Mais si le mec bloque les pop ups ? Il se passe quoi ?

A mon avis, vaut mieux partir du principe que le mec est libre de faire ce veut, et qu'il faut faire un truc qui ne depende pas d'un "clic" de tes visiteurs.
Sinon, tout tombe par terre.
Répondre

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours