[PHP] Temps passé sur une page ?

Temps passé sur une page ? [PHP] - PHP - Programmation

Marsh Posté le 28-07-2003 à 20:21:21    

Bonjour,
peut-on trouver le temps passé sur une page en PHP ?
Ceci afin de renseigner mon champ MySQL : TimeFinVisite.
merci
JLC


Message édité par chninkel le 28-07-2003 à 20:40:01
Reply

Marsh Posté le 28-07-2003 à 20:21:21   

Reply

Marsh Posté le 28-07-2003 à 20:39:35    

PHP : langage qui s'exécute coté serveur, donc je ne vois pas comment PHP (le langage) pourrait savoir ce qui se passe du coté du client...
 
Au pire tu peux faire en sorte que chacuns des liens qui composent ta page contiennent le timestamp de l'instant où la page a été générée. Comme ça dès qu'on clique sur un lien, on envoie au serveur le timestamp et il est capable de déduire le temps passé en faisant la différence avec le timestamp courant...
 
Bien ça ne marche que si le visiteur reste sur le site et qu'il clique sur des liens. S'il sort du site ou qu'il utilise Back/Forward, on perd l'info..


---------------
Incongru : une FAQ abandonnée sur les Standards du Web - FAQ périmée de blabla@Prog
Reply

Marsh Posté le 28-07-2003 à 20:44:42    

C'est justement mon problème !!!
 
N'y a-t-il pas moyen de :
calculer le temps en javascript et à l'aide d'un 'onUnload' lancer l'exécution d'un bout de code PHP qui mettrait à jour MySQL avant de rendre la main au 'surfeur' ?
 
???
merci

Reply

Marsh Posté le 28-07-2003 à 20:47:34    

chninkel a écrit :

C'est justement mon problème !!!
 
N'y a-t-il pas moyen de :
calculer le temps en javascript et à l'aide d'un 'onUnload' lancer l'exécution d'un bout de code PHP qui mettrait à jour MySQL avant de rendre la main au 'surfeur' ?
 
???
merci
 


 
non, c'est n'importe quoi ça. Du code javascript (coté client) n'éxécute jamais du code php (coté serveur)


---------------
From now on, you will speak only when spoken to, and the first and last words out of your filthy sewers will be "Sir!"
Reply

Marsh Posté le 28-07-2003 à 20:51:01    

donc d'après vous,  
on ne peut pas mettre dans MySQL le temps passé par le visiteur sur une page ?

Reply

Marsh Posté le 28-07-2003 à 21:27:38    

Si, mais de manière imparfaite (cf ma réponse). Et qu'on le mette dans MySQL ou autre n'a aucune importance...


---------------
Incongru : une FAQ abandonnée sur les Standards du Web - FAQ périmée de blabla@Prog
Reply

Marsh Posté le 28-07-2003 à 22:01:14    

SchnapsMann a écrit :


 
non, c'est n'importe quoi ça. Du code javascript (coté client) n'éxécute jamais du code php (coté serveur)


 
Ben pourkoi?
Si le onUnload ouvre une popup dont l'adresse est un script php par exemple, c'est tout à fait faisable

Reply

Marsh Posté le 28-07-2003 à 22:02:09    

pospos a écrit :


Si le onUnload ouvre une popup  


 
FREEE XXXX P0RNNNNNNN


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
Reply

Marsh Posté le 28-07-2003 à 22:21:18    

kadreg a écrit :


 
FREEE XXXX P0RNNNNNNN


 
bon le vieux tu vas arreter de polluer les topics sérieux stp [:oldwam]


Message édité par schnapsmann le 28-07-2003 à 22:21:45

---------------
From now on, you will speak only when spoken to, and the first and last words out of your filthy sewers will be "Sir!"
Reply

Marsh Posté le 28-07-2003 à 22:32:05    

pospos a écrit :

Ben pourkoi?
Si le onUnload ouvre une popup dont l'adresse est un script php par exemple, c'est tout à fait faisable


Ouais mais bon c'est TRÈS lourd... HTTP n'est pas fait pour ça.
 
Si on vient à faire des trucs comme ça alors il faut raisonnablement envisager d'autres méthodes pour communiquer entre le client et le serveur...


---------------
Incongru : une FAQ abandonnée sur les Standards du Web - FAQ périmée de blabla@Prog
Reply

Marsh Posté le 28-07-2003 à 22:32:05   

Reply

Marsh Posté le 28-07-2003 à 22:52:03    

ya peu etre une autre solution:
 
tu met tes pages dans un frameset, avec comme frame du haut (ou de gauche) une frame de 1 pixel qui est en fait une page qui fait un meta refresh toutes les 5 secondes par exemple (suivant la precision dont tu a besoin), avec comme parametre la location de la page qui se trouve dans la frame principale (la seule visible pour l'utilisateur) touq ca envoyé au script php.
 
Le script php peu renvoyer un code http 204 ("ne pas changer le contenu" ) pour alleger un peu tout ca
 
ca doit etre jouable je pense

Reply

Marsh Posté le 28-07-2003 à 23:41:17    

hum ca doit etre possible... des scripts de stat le font...  
 
en calculant à kel moment la page est appelé et à kel moment on apelle une autre page c pas possible.??.

Reply

Marsh Posté le 29-07-2003 à 00:09:42    

Peaceiznotdie13 a écrit :

hum ca doit etre possible... des scripts de stat le font...  
 
en calculant à kel moment la page est appelé et à kel moment on apelle une autre page c pas possible.??.


Si, cf ma solution plus haut... Ou alors on peut utiliser les sessions... En enregistrant en variable de session le timestamp de la génération d'une page et en calculant le temps passé entre chaque appel. Mais là aussi c'est imaparfait.


---------------
Incongru : une FAQ abandonnée sur les Standards du Web - FAQ périmée de blabla@Prog
Reply

Marsh Posté le 29-07-2003 à 10:11:11    

si jamais le visiteur passe de page en page sur mon site, le problème n'existe pas vraiment. L'heure d'accès à la nouvelle page correspond à la fin de l'ancienne.
Le Pb existe quand il quitte la dernière page pour aller ailleurs; là, je ne sais pas combien de temps il est resté sur cette dernière page !!!
Et c'est ce que je voudrais savoir
On peut calculer le temps passé en JavaScript, mais comment l'envoyer au serveur pour qu'il le mette en MySQL ?

Reply

Marsh Posté le 29-07-2003 à 11:47:39    

Plutôt qu'une pop-up bien chiante (même si elle est fermée automatiquement) tu peux utiliser une frame invisible (taille 0 pixel) dans laquelle tu charges ton PHP lors du onUnload :D


Message édité par Dost67 le 29-07-2003 à 11:48:26
Reply

Marsh Posté le 29-07-2003 à 12:15:22    

Oui, mais je n'utilise pas de frames sur mon site

Reply

Marsh Posté le 29-07-2003 à 13:05:40    

Si je puis me permettre, a quoi ca peut bien servir de savoir si le gas est resté 54 secondes ou 15  minutes avec telle page web ouverte?

Reply

Marsh Posté le 29-07-2003 à 14:36:16    

parce que j'ai des pages commerciales sur mon site
chaque client a 1,2 ou 3 pages
et certains clients voudraient avoir des stats précises
voilà

Reply

Marsh Posté le 29-07-2003 à 16:23:56    

omega2 a écrit :

Si je puis me permettre, a quoi ca peut bien servir de savoir si le gas est resté 54 secondes ou 15  minutes avec telle page web ouverte?
 


 
ca peut etre intéressant de connaitre les pages qui intéressent le plus les visiteurs pour pouvoir améliorer les services proposés sur ces pages...tout simplement et cen'est qu'une raison parmi plein d'autres

Reply

Marsh Posté le 29-07-2003 à 19:56:44    

chninkel a écrit :

parce que j'ai des pages commerciales sur mon site
chaque client a 1,2 ou 3 pages
et certains clients voudraient avoir des stats précises
voilà


Bof, mieux vaut faire des études qualitatives sur des retours d'expérience.
 
Comme tu l'as compris c'est très difficile d'évaluer cette info. Car il y a plein de failles (en particulier les boutons Back et Forward)
 
Et puis de toute façon la meilleure stat c'est la fréquentation du site ou le nombre de hits par visiteur. S'il est bien fait et qu'il remplit son rôle le gens reviendront.
 
Le temps passé sur une page n'a, à mon sens pas beaucoup de signification : on peut passer peu de temps sur un site pour 2 raisons :
 - Le site est bien fait et on trouve l'info tout de suite => le client est content et reviendra
 - Le site est mal fait => le client rebuté repart immédiatement.
 
Bref pour une même observation (un temps de visite court) on abouti à 2 conclusions contradictoires.
 
 
Bon bien sûr tout dépend de ton domaine d'activité, mais à mon avis tu cherches une réponse (imparfaite) à une fausse question...


---------------
Incongru : une FAQ abandonnée sur les Standards du Web - FAQ périmée de blabla@Prog
Reply

Marsh Posté le 29-07-2003 à 20:36:48    

[:psychokwak]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 29-07-2003 à 21:29:10    

gm_superstar a écrit :


Le temps passé sur une page n'a, à mon sens pas beaucoup de signification : on peut passer peu de temps sur un site pour 2 raisons :
 - Le site est bien fait et on trouve l'info tout de suite => le client est content et reviendra
 - Le site est mal fait => le client rebuté repart immédiatement.

Même chôses pour les longues durées :

  • la page contient beaucoup de trucs intéressants: on met beaucoup de temps a lire.
  • Il y a rien d'intéressant a voir sur la page mais on regarde plusieurs sits a la fois : pas de temps de lecture, temps d'affichage super sourt, mais une longue durée d'ouverture.

;)

Reply

Marsh Posté le 29-07-2003 à 21:34:05    

C'est bien vrai ce que vous dites ...
Le temps affichage page n'a pas vraiment de valeur
On peut aussi aller boire un café en laissant la page afichée ...
Bon je verrais ça plus tard si le besoin se déclare à nouveau.
Je vais, pour l'instant, me contenter d'essayer de suivre le chemin du visiteur pour les clients qui ont plusieurs pages.
merci à tous
 

Reply

Marsh Posté le 29-07-2003 à 21:38:26    

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed