JeuWeb - Crée ton jeu par navigateur
Utilisateur(s) navigant sur ce forum : Melimelo, 1 Visiteur(s) - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : Utilisateur(s) navigant sur ce forum : Melimelo, 1 Visiteur(s) (/showthread.php?tid=3378)



Utilisateur(s) navigant sur ce forum : Melimelo, 1 Visiteur(s) - Melimelo - 04-12-2008

Bonjour a tous,

j'ai une petite question Php

Utilisateur(s) navigant sur ce forum : Melimelo, 1 Visiteur(s)


Comment cela est-il realisable ? En effet je ne vois pas du tout comment realiser pareil sortilege Big Grin.

Voila donc si il y en a qui ont des idees, je suis preneur.

Cordialement Melimelo


RE: Utilisateur(s) navigant sur ce forum : Melimelo, 1 Visiteur(s) - Thedeejay - 04-12-2008

simple: télécharge Mybb et regarde les sources... (ca doit bouffer niveau serveur!) et vu sur mon profil:
Thedeejay
(Membre)
[...]
Statut : En ligne (Regarde le profil de Thedeejay. @ 06:59 PM)
sans blague???


RE: Utilisateur(s) navigant sur ce forum : Melimelo, 1 Visiteur(s) - Zamentur - 04-12-2008

Simple comme bonjour!
Tu créer un table avec le moteur Memory dans Mysql
avec pour champs

id_membre INT
last_connection TIMESTAMP

Et en gros dés que quelqu'un se connecte tu l'ajoutes dans ta table memory et tu vire ceux qui n'ont pas ouvert de page depuis 5 minute (moins ou plus à toi de voir)

Et là tu peux lister ou faire ce que tu veux avec les présents...


RE: Utilisateur(s) navigant sur ce forum : Melimelo, 1 Visiteur(s) - zneman - 04-12-2008

De même, pour les visiteurs, il suffis de regarder les membres en ligne... Si aucun ne possède la même IP que l'utilisateur, c'est que c'est un visiteur (s'il n'est pas connecté)

Table: connexions
Champs: id / type / id_membre / ip / timestamp
(type = 0 ou 1... 0 = visiteur et 1 = membre)
(id_membre = 0 si visiteur et id du membre si c'est un membre)

Dans ta page, lors du chargement d'une page:
- verification si la personne est connectée
- si elle ne l'est pas, l'enregistrer dans ma table de connexion en tant que visiteur
- si elle y est, mettre a jour le timestamp de connexion dans la table de connexion
- si elle est connectée mais aucune entrée ne correspond à son id de membre dans la BDD, créer une entrée avec son id, timestamp etc...

Afficher les connectés:

Il y'a (boucle affichant toutes les personnes membres connectées ces 5 dernières minutes) et xx (on compte les visiteurs de ces 5 dernières minutes) visiteurs en ligne actuellement.


RE: Utilisateur(s) navigant sur ce forum : Melimelo, 1 Visiteur(s) - Melimelo - 05-12-2008

nan mais je sais faire les membres connecte mais je sais pas faire ce membres visite cette page la ...


RE: Utilisateur(s) navigant sur ce forum : Melimelo, 1 Visiteur(s) - keke - 05-12-2008

Il suffit de stocker le nom de la page en BDD.

J'ai pas de quoi tester, mais les variables du type :
$_SERVER['REQUEST_URI']
doivent pouvoir t'aider.

La dynamique c'est que : à chaque début de page php, tu fais un insert dans ta table de suivi des joueurs contenant l'heure (time () ou SYSDATE) et l'url ...

Après, c'est enfantin avec ton niveau d'extraire l'information qui convient.

Kéké


RE: Utilisateur(s) navigant sur ce forum : Melimelo, 1 Visiteur(s) - Melimelo - 05-12-2008

pas betes je pensait quand meme, je vais associer cela avec le compteur de connecte et ca ira tout seul.


Cordialement Melimelo


RE: Utilisateur(s) navigant sur ce forum : Melimelo, 1 Visiteur(s) - keke - 05-12-2008

J'utilise un système similaire sur mon jeu :
Mes joueurs n'utilisent en tout et pour tout qu'une page : main.php
Je différencie uniquement sur une valeur particulière :
Ca donne des résultats comme ceci pour aujourd'hui :
Citation :nb_de_clic action
1288 deplace
226 voir_batiment
212 objets
131 actionsmonstre
109 voir_rue
107 proximite
105 menu_controverse
90 equipement
83 conversion_population
49 index
45 messagerie

Je peux aussi avoir le cheminement exacte d'un joueur si je le souhaite, à la seconde près et vérifier aussi tous les cas de tentative de force brute.

L'idée que j'avais c'était de savoir qu'elle était les fonctionnalités qui sont boudées par les joueurs (peu utiliser) et les fonctionnalités à Optimiser en priorité. Depuis mon changement d'hébergeur, on n'a jamais franchi les 5% d'utilisations aloués ... je n'ai donc pas à m'en faire ... mais peut-être qu'un jour, cela sera nécessaire ^^.
Dans les évolutions futures sur ce point (mais comme y'a pas de besoin maintenant, je peux laisser cela de côté), je comptais rajouter quelques paramètres en plus selon chaque action. Par exemple on peut dialoguer avec les monstres, les combattre, les convertir ... Tout cela est résumé avec l'option actionsmonstre. Il pourrait être utile de les distinguer.

Voilou ^^

Kéké
PS : j'utilise aussi une petite astuce pour déterminer combien de temps un joueur a consacré sur une page. Mon objectif étant de déterminer les joueurs jouant avec les options DV (qui ont quelques avantages au niveau de la navigation) mais qui joue comme un voyant (délai entre 2 clic très court). La fonction de détection de fraude n'a pas été créée car j'en ai pas l'utilité pour le moment. La fonction permettant de calculer l'intervalle de temps entre 2 clics est par contre fonctionnel.


RE: Utilisateur(s) navigant sur ce forum : Melimelo, 1 Visiteur(s) - Melimelo - 08-12-2008

Pour ca je recoupe les log apache avec les donnees recolte sur le jeu, mais rien n'empeche d'avoir plusieurs page.

parcourt sur chaque page est pas vraiment utile etant donne que apache le fait deja, mais log des action (propre au jeu ca peut etre interessant)

Cordialement Melimelo