Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1857 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Temps passé sur un site + acualisation BDD

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Temps passé sur un site + acualisation BDD

n°196914
juanetfann​y
Posté le 19-08-2002 à 12:13:49  profilanswer
 

Voila mon problème. Je souhaite que le temps de visite d'un visiteur (préalablement identifié) d'un site particulier (dont le lien figure sur une de mes pages) puisse être enregistré dans une base de donnée. A priori, il me faut 2 frames : une 1ère invisible qui se charge du compteur temps en javascript et l'autre qui affiche le site visité. Est-ce que quelqu'un pourrait m'aider car je ne voit pas comment procéder et comment pouvoir actualiser ma base de donnée au moment où le visiteur ferme la page.
 
Merci beaucoup !


---------------
Tout vendre, acheter, échanger en normandie : http://www.webannonces-normandes.com
mood
Publicité
Posté le 19-08-2002 à 12:13:49  profilanswer
 

n°196917
mkracing66
Posté le 19-08-2002 à 12:19:27  profilanswer
 

au moment ou le visiteur ferme la page ?
 
c possible si tu mets un bouton de deconnexion je presume....et donc au moment de la deconnex tu fais une diff du temps ou il s est logge et celui ou il se delogge
Je ne vois pas d autre soluce
 
Dsl un peu noob sur les bords alors j essaye d aider au mieux


---------------
L'ennemi est bête : il croit que c'est nous l'ennemi alors que c'est lui ! [Pierre Desproges]
n°196928
juanetfann​y
Posté le 19-08-2002 à 12:30:05  profilanswer
 

non pas besoin, il y a une fonction redirect() qui redirige vers une page PHP lorsque le visiteur quitte la page. Cette fonction est lancée grace à l'évènement onUnload de javascript.


---------------
Tout vendre, acheter, échanger en normandie : http://www.webannonces-normandes.com
n°196933
juanetfann​y
Posté le 19-08-2002 à 12:35:57  profilanswer
 

Voila le procédé (mais tout est théorique, je sais pas mettre en pratique) :
 
Le visiteur s'est identifié. Quand il clique sur un lien publicitaire de mon site, une nouvelle page doit s'ouvrir (celle contenant les 2 frames) avec transmission en paramètres dans l'url l'identifiant du visiteur et le numéro du lien. Le script compteur de temps est lancé avec l'ouverture de la page (contenu dans une frame invisible) et lorsque la page est fermée (évènement onUnload), un script PHP doit pouvoir actualiser la base de donnée avec l'id du visiteur, le numéro du lien et le temps passé. Voilà ce que j'aimerais faire mais je ne sais pas !
 
Mais j'ai un déjà un bout de code que je vais poster pour que ce soit plus clair.


---------------
Tout vendre, acheter, échanger en normandie : http://www.webannonces-normandes.com
n°196938
juanetfann​y
Posté le 19-08-2002 à 12:43:14  profilanswer
 

Voilà le squelette de code :
 

Code :
  1. <html>
  2. <head>
  3. <title></title>
  4. <script language="javascript">
  5. var Temps=0
  6. var tmp=0
  7. n = (document.all) ? false : true;
  8. function getSecs()
  9. {
  10. Temps = Temps+1
  11. window.setTimeout('getSecs()',1000);
  12. }
  13. function redirect()
  14. {
  15. // dans cette fonction on transmet au script PHP l'id du  
  16. // visiteur, le code de la pub et la variable Temps  
  17. // window.open('compteur_ok.php')
  18. }
  19. function stop()
  20. {
  21. tmp=Temps;
  22. }
  23. function restart()
  24. {
  25. Temps=tmp;
  26. }
  27. </script>
  28. </head>
  29. <frameset rows="250,*" frameborder="5" onBlur="stop()" onFocus="restart()" onUnload="redirect()" onLoad="window.setTimeout('getSecs()',1000" )>
  30. <frame scrolling="no" noresize name="top">
  31. <frame name="principal" src=" ici le lien publicitaire " target="principal">
  32. <noframes>
  33. <body>
  34. </body>
  35. </noframes>
  36. </frameset>
  37. </html>


---------------
Tout vendre, acheter, échanger en normandie : http://www.webannonces-normandes.com
n°196949
juanetfann​y
Posté le 19-08-2002 à 12:56:11  profilanswer
 

Voilà un petit organigramme de ce que je veux faire :
 
1) le visiteur d'identifie
2) il clique sur un lien publicitaire
3) Une nouvelle page s'ouvre (avec transfert par l'url de l'id visiteur et code pub)incluant 2 frames : le compteur temps et le lien publicitaire
4) le visiteur ferme la page
5) dès fermeture, l'évènement OnUnload déclenche un script qui actualise la base de donnée (avec transfert de l'id visiteur, le code pub et le temps passé sur le site). Si ce délai est supérieur à une minute, un champ booléen de ma bdd est mis à 1.
 
Toute aide est la bienvenue !
             


---------------
Tout vendre, acheter, échanger en normandie : http://www.webannonces-normandes.com
n°196950
mkracing66
Posté le 19-08-2002 à 12:56:50  profilanswer
 

Ouais donc tu veux juste le code php pour l insertion dans la base de donnees ?
 
Mais dis moi t sur que ca marche tes fonctions en js ?
Ca compte bien le temps ?
 
sinon il suffit de faire dans le script de reception des parametres (par url je presume ), un petit bout de code pour recuperer les valeurs de chaques params et faire l insert dans la bdd.
 
Dsl mais meme un petit explique g du mal a piger tout ce que tu veux.
Mais je pense que c pareil pour tout le monde dans chaque topic ;)


Message édité par mkracing66 le 19-08-2002 à 12:57:04

---------------
L'ennemi est bête : il croit que c'est nous l'ennemi alors que c'est lui ! [Pierre Desproges]
n°196955
juanetfann​y
Posté le 19-08-2002 à 13:05:03  profilanswer
 

En fait, pour être sur que mes scripts fonctionnent, je voudrais pouvoir afficher le temps dans ma première frame mais je sais pas comment on fait ? Mais c juste pour vérifier que ça marche


---------------
Tout vendre, acheter, échanger en normandie : http://www.webannonces-normandes.com
n°196958
mkracing66
Posté le 19-08-2002 à 13:08:53  profilanswer
 

J ai des connaissances plus que limite sur les frames et sur le javascript mais je me demande comment ton script du calcul de seconde fonctionne....
Il est lance a l upload tu ajoute une seconde jusque la ok et tu kill la fenetre au bout de 1s c ca je crois mais c execute qu une fois ca alors comment il s incremente ton compteur :??:
 


---------------
L'ennemi est bête : il croit que c'est nous l'ennemi alors que c'est lui ! [Pierre Desproges]
n°196963
mkracing66
Posté le 19-08-2002 à 13:11:56  profilanswer
 

je suis un peu paume dans ton js je te l avoue arf ja vais pas vu le onfocus , le restart etc....mais ca me parait bien complique...
 
Pk tu ne recup pas l heure actuel au moment de l ouverture du lien, une recup au moment de la fermeture, la redirection et enfin l insertion de la diff dans la bdd ?


---------------
L'ennemi est bête : il croit que c'est nous l'ennemi alors que c'est lui ! [Pierre Desproges]
mood
Publicité
Posté le 19-08-2002 à 13:11:56  profilanswer
 

n°196978
juanetfann​y
Posté le 19-08-2002 à 13:23:51  profilanswer
 

MkRacing66 a écrit a écrit :

J ai des connaissances plus que limite sur les frames et sur le javascript mais je me demande comment ton script du calcul de seconde fonctionne....
Il est lance a l upload tu ajoute une seconde jusque la ok et tu kill la fenetre au bout de 1s c ca je crois mais c execute qu une fois ca alors comment il s incremente ton compteur :??:
 
 




 
avec la fonction getSecs() et l'increment Temps=Temps+1


---------------
Tout vendre, acheter, échanger en normandie : http://www.webannonces-normandes.com
n°196980
juanetfann​y
Posté le 19-08-2002 à 13:25:56  profilanswer
 

MkRacing66 a écrit a écrit :

Pk tu ne recup pas l heure actuel au moment de l ouverture du lien, une recup au moment de la fermeture, la redirection et enfin l insertion de la diff dans la bdd ?




Parce que si le visiteur laisse la page ouverte mais vas surfer ailleurs, le temps va continuer de tourner alors qu'il ne sera pas effectivement sur le site publicitaire  :)


---------------
Tout vendre, acheter, échanger en normandie : http://www.webannonces-normandes.com
n°196993
mkracing66
Posté le 19-08-2002 à 13:34:17  profilanswer
 

oui mais ton getsec() il est declenche a l unload mais t bien sur qu il est update a chaque fois ?
Ton setimeout te permet bien de rappeler ta fonction tu es sur de ca.....
 
Parce que sinon dans l appel du script il t tout a fait possible de passer tes params par l url, ensuite tu fais un parse_str de ton url pour recuperer les valeurs associees a chaque variable et tu fais l insert dans ta bdd ou le traitement que tu voulais avec le temps sup a 1min...
 
Desole je ne vois pas ce que je pourrais te dire de plus a moins que tu veuille du code php plus detaille ?
 


---------------
L'ennemi est bête : il croit que c'est nous l'ennemi alors que c'est lui ! [Pierre Desproges]
n°197004
juanetfann​y
Posté le 19-08-2002 à 13:47:03  profilanswer
 

Ok, bon oublions mon code.
La page principale où le visiteur cliques sur le lien pub est déjà en PHP donc, je récupères les valeurs par l'url. Mais après, je sais pas comment faire !
As-tu un script plus simple ?


---------------
Tout vendre, acheter, échanger en normandie : http://www.webannonces-normandes.com
n°197022
mkracing66
Posté le 19-08-2002 à 14:04:47  profilanswer
 

Bon voila ce que je te propose...
 

Code :
  1. <?
  2. //recup url (!!! A VERIFIER !!!)
  3. $url= $_SERVEUR["REQUEST_URI"]; //a verifie je ne suis pas du tout sur...
  4. //recuperation des couples param=valeurs (comme dans l url)
  5. parse_str($url);
  6. //Connection a la bdd (valeurs a remplacer par tes params de mysql)
  7. @mysql_connect($dbhost,$dbuser,$dbpasswd) or die("Impossible de se connecter à la base de données" );
  8. @mysql_select_db($dbname) or die("base de donnée inexistante" );
  9. //Construction de la requete
  10. $requete = "INSERT $nomtable(champ1,champ2,...) VALUES ('valeur1','valeur2',...)";
  11. //insertion dans la bdd
  12. $resultat= mysql_query($requete) or die("Insertion dans la bdd impossible Requete executee : $requete" );
  13. ?>


 
Bon voila
A verifier  
peux rien faire de plus bye ;)
 
 


---------------
L'ennemi est bête : il croit que c'est nous l'ennemi alors que c'est lui ! [Pierre Desproges]

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Temps passé sur un site + acualisation BDD

 

Sujets relatifs
Trés bon site... Ici.Recherche un Bdd des départements francais ?
[C/C++] Exécuter plusieurs fonctions en même temps : fork ???que pensez vous de mon site ?
un tchat gratuit et simple pour l'installer sur son site ?Mon site enfin en php
Mon site merde avec php nuke depuis tout a l'heure es ce que c free?Site intranet
comment avertir le client que son temps de sessions va se terminer??Comment ca se passe avec le port serie?
Plus de sujets relatifs à : Temps passé sur un site + acualisation BDD


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR