|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre expérimenté
![]() Inscription : octobre 2006 Messages : 572 ![]() |
Salut à tous !
Voilà, je voudrais créer un module d'analyse de la fréquentation de l'extranet de ma boîte où l'une des clés est le temps passé par page... Pour cela, il faut que je récupère en unités de temps (minutes ou secondes ou millisecondes, peu importe) la différence entre l'accès à la page du visiteur, et l'accès à une autre page (dont le script de delog). Avec JS, on peut le faire via les évènements onload et onunload, mais je voudrais éviter d'utiliser ce langage (je pense que pas mal de mes visiteurs l'ont désactivé...). Est-ce possible avec PHP seul ? J'ai peur que non, mais si un ingénieux développeur avait un brin d'idée à me soumettre, ce serait du bonheur ! Précision : je voudrais, si possible, éviter de trop utiliser les variables GET déjà bien exploitées par le développeur précédent.... Merci aux courageux !
__________________
GAMIN !!!! ![]() _______________________________________________ PHP 5.2 | Apache 2 | MySQL 5 | WinXP Pro | Mac OSX |
|
|
00
|
|
|
#2 |
![]() ![]() Développeur Web Inscription : août 2006 Messages : 2 700 ![]() |
Tu peux pas récupérer l'heure d'entrée et l'heure de sortie ?
Chacune stockée (session ou autre) et tu fais la différence. J'imagine que tu y a pensé aussi il doit y avoir une subtilité qui m'échappe. |
|
|
00
|
|
|
#3 |
|
Membre chevronné
![]() Inscription : juin 2005 Messages : 572 ![]() |
Heu lors de l'appel d'une page donnée (toutes en fait) tu stockes l'heure/minute/seconde microseconde dans une session, et sur le script de delog tu calcules l'écart.
Mais j'ai peut etre mal saisi la demande... |
|
|
00
|
|
|
#4 |
|
Membre éclairé
![]() Inscription : avril 2005 Messages : 495 ![]() |
A chaque début de page tu peut enregistrer l'id du visiteur, son nom, la date et la page visité.
Pour le dernier accès tu à la page de délog, si ils l'utilisent .... Après ca tu a tout ce qu'il faut pour faire des stats. |
|
|
00
|
|
|
#5 |
|
Membre expérimenté
![]() Inscription : octobre 2006 Messages : 572 ![]() |
Salut !
Enfin un signe de vie ! Merci ! La difficulté ne réside pas dans l'heure d'entrée et de sortie du site (log et delog) mais dans l'heure d'entrée et de sortie de chaque page contenue dans le site... C'est pas évident pour moi... c'est un truc que je n'ai jamais fait. J'ai bien pensé aux sessions auxquelles j'affecterais la valeur d'un time() au moment du relai, mais je ne vois pas comment faire la différence avec la session suivante et stocker la valeur dans la base... T'aurais pas un indice?
__________________
GAMIN !!!! ![]() _______________________________________________ PHP 5.2 | Apache 2 | MySQL 5 | WinXP Pro | Mac OSX |
|
|
00
|
|
|
#6 |
|
Expert Confirmé
![]() ![]() Inscription : juillet 2004 Messages : 2 684 ![]() |
Au début de chaque page tu peux ajouter un bout de code qui ferait en gros : récupération de $_SESSION['id_page'] (qui correspond en fait à l'id de la page précédente), calcul de l'écart entre l'heure actuelle et $_SESSION['heure'], bidouille avec ça (sauvegarde en base peut-être), puis mise à jour des données avec la page et l'heure courantes. Tu mets ce code dans un fichier php que tu include au début de chaque page.
__________________
Pas de questions techniques par MP, le forum est là pour ça et est plus efficace. Orthographe : une connexion (avec un x), un langage (sans u), une requête (un seul t), 'une quote' (avec qu), une syntaxe (sans h) |
|
|
00
|
|
|
#7 |
|
Membre chevronné
![]() Inscription : juin 2005 Messages : 572 ![]() |
Tu stockes ce dont tu as besoin dans deux sessions : l'une contenant l'heure et l'autre le nom de la page.
A chaque changement de page tu exécutes un petit script qui fait la différence entre l'heure actuelle et celle en session, et enregistre pour la page donnée en session (si tu as besoin de cette finesse) l'écart. Ensuite tu rerenseignes les deux variables session. J'espere etre clair ![]() EDIT : owned |
|
|
00
|
|
|
#8 | |
|
Expert Confirmé
![]() ![]() Inscription : juillet 2004 Messages : 2 684 ![]() |
Citation:
Il faut le faire quand même
__________________
Pas de questions techniques par MP, le forum est là pour ça et est plus efficace. Orthographe : une connexion (avec un x), un langage (sans u), une requête (un seul t), 'une quote' (avec qu), une syntaxe (sans h) |
|
|
|
00
|
|
|
#9 | |
|
Membre expérimenté
![]() Inscription : octobre 2006 Messages : 572 ![]() |
Citation:
Il fallait le faire ça ! Mais oui ! C'est ça qu'il faut que je fasse ! L'heure courante ! Merci ! Faut que je rallume mon cerveau moi !
__________________
GAMIN !!!! ![]() _______________________________________________ PHP 5.2 | Apache 2 | MySQL 5 | WinXP Pro | Mac OSX |
|
|
|
00
|
|
|
#10 | ||||
|
Membre éclairé
![]() Inscription : avril 2005 Messages : 495 ![]() |
C'est une mauvaise idée de chercher à connaitre le temps entre deux page.
Code sql :
Code :
Pour le temps entre chaque page, calcul le au moment des stats, page_suivante-page_précédente |
||||
|
|
00
|
|
|
#11 |
|
Membre expérimenté
![]() Inscription : octobre 2006 Messages : 572 ![]() |
Bon, ça marche super le truc d'Amara et Ratapapa !
Maintenant, en étoffant un peu tout ça, j'ai un module d'analyse super complet ! Merci les gars ! Je me rend compte que le sommeil ça joue beaucoup sur la réflexion Merci de votre aide !
__________________
GAMIN !!!! ![]() _______________________________________________ PHP 5.2 | Apache 2 | MySQL 5 | WinXP Pro | Mac OSX |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com