begin process at 2012 05 31 04:42:56
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Base de données

 > 

MySQL

 > 

Pister le parcours du visiteur et sauvegarder dans une base MySQL


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Pister le parcours du visiteur et sauvegarder dans une base MySQL

mercredi 24 décembre 2008 à 17:14:22 | Pister le parcours du visiteur et sauvegarder dans une base MySQL

karpediem

Bonjour à toutezéatous,

Je souhaiterai pister le parcours de mes visiteurs.

L'accès à mon site se fait après authentification => j'ai l'identifiant du visiteur
Je souhaiterai intercepter le clic du visiteur sur certaines balises HTML type <im> ou <href>.
Je pensais pouvoir mettre dans les balises concernées quelque chose dans le genre onMouseUp...

Au final, je souhaiterai insérer un enregistrement dans une table Mysql qui contiendrait les informations suivantes : id_visiteur, date_heure_clic, reference_lien.

Mais c'est là que ça se corse ;o))
Je ne sais pas comment faire pour faire communiquer l'instruction javascript (onMouseUp) et mon traitement PHP.
Le onMouseUp lance une fonction javascript... comment lui dire à javascript d'exécuter du PHP ?

J'espère avoir été assez claire !

En attendant vos réponses, je pense que vous avez des choses à faire aujourd'hui ;o)), je vous souhaite un excellent réveillon à toutezéatous avec champagne et chocolats sans modération !!

A bientôt



mercredi 24 décembre 2008 à 18:51:32 | Re : Pister le parcours du visiteur et sauvegarder dans une base MySQL

kohntark

Membre Club
Salut,


Je souhaiterai pister le parcours de mes visiteurs.
=> c'est pas bien !!! :o)

Si j'interprète "[...]sur certaines balises HTML type <im> ou <href>" == dès qu'un visiteur clique sur un lien c'est très simple à gérer, il suffit d'insérer les données à chaque appel de page, du style :

INSERT INTO jetracelesvisiteurs (id_visiteur, date_heure_clic, reference_lien) VALUES ('$_SESSION['id']','date("Y-m-d H:i:s")', '$_SERVER['REQUEST_URI']);

Maintenant si mon interprétation n'est pas bonne et que tu souhaites tracer comment le visiteur utilise sa souris il faudra passer par Ajax et les XMLHTTPREQUEST

A propos, l'utilisation de onMouseUp correspond à l'action de relachement du bouton de la souris, ce qui n'est pas la même chose qu'un clique (onclick)


Cordialement,


kohntark-
jeudi 25 décembre 2008 à 14:39:13 | Re : Pister le parcours du visiteur et sauvegarder dans une base MySQL

karpediem

Comme on se retrouve !

Ce que je veux faire, c'est bien "pister le click" mais pas n'importe quel click dans la page (après tout, mon visiteur a de droit de faire ce qu'il veut avec sa souris ;o)). L'idée est de pouvoir analyser finement par la suite pour chaque visiteur quels sont les liens qu'il a cliqués pour en déduire ses centres d'intérêt. Dans la plupart des softs c'est le onMouseUp qui déclenche l'action... Si "les grands" font ça, je suppose qu'il doit y avoir une raison, voire même qu'ils y ont réfléchi avant... Sans aucune originalité de ma part, je voudrais faire comme eux ;o)) d'où mon idée d'intercepter l'évènement au niveau de la balise html (à la source)...

Toi ce que tu me proposes c'est non pas d'intercepter l'évènement onMouseUp, mais d'intercepter l'arrivée dans la page... Je crains qu'avec cette solution, l'information récupérée soit un peu trop "macro" pour ce que je souhaite faire... Par ailleurs, ce que je vois dans un premier temps c'est que dans $_SERVER['REQUEST_URI']
je vais récupérer tous les $_GET qu'il faudra que j'interpréte par la suite pour connaitre la demande effectuée en amont, alors qu'en interceptant le click à la source, je pourrais "normaliser" les liens et envoyer comme paramètre l'identifiant du lien à une fonction qui ferait l'insertion dans Mysql...
Tout ça me semble "conceptuellement" très simple (mais n'oublions pas que je ne suis qu'une fille ;o) En revanche, lorsqu'il s'agit de passer à la réalisation, je ne sais pas comment javascript veut envoyer une requete SQL, ni même si c'est possible... Tu sais si c'est possible ?

Peut-être qu'il faudrait passer par Ajax... mais Ajax, c'est comme mon niveau d'anglais ;o)


Sinon il faudra que j'adopte ta solution... En attendant, je vais réfléchir à la mise en place de ta solution voir si elle pourrait convenir dans mon contexte.

Merci pour cette réponse et à bientôt.


jeudi 25 décembre 2008 à 14:39:13 | Re : Pister le parcours du visiteur et sauvegarder dans une base MySQL

karpediem

Comme on se retrouve !

Ce que je veux faire, c'est bien "pister le click" mais pas n'importe quel click dans la page (après tout, mon visiteur a de droit de faire ce qu'il veut avec sa souris ;o)). L'idée est de pouvoir analyser finement par la suite pour chaque visiteur quels sont les liens qu'il a cliqués pour en déduire ses centres d'intérêt. Dans la plupart des softs c'est le onMouseUp qui déclenche l'action... Si "les grands" font ça, je suppose qu'il doit y avoir une raison, voire même qu'ils y ont réfléchi avant... Sans aucune originalité de ma part, je voudrais faire comme eux ;o)) d'où mon idée d'intercepter l'évènement au niveau de la balise html (à la source)...

Toi ce que tu me proposes c'est non pas d'intercepter l'évènement onMouseUp, mais d'intercepter l'arrivée dans la page... Je crains qu'avec cette solution, l'information récupérée soit un peu trop "macro" pour ce que je souhaite faire... Par ailleurs, ce que je vois dans un premier temps c'est que dans $_SERVER['REQUEST_URI']
je vais récupérer tous les $_GET qu'il faudra que j'interpréte par la suite pour connaitre la demande effectuée en amont, alors qu'en interceptant le click à la source, je pourrais "normaliser" les liens et envoyer comme paramètre l'identifiant du lien à une fonction qui ferait l'insertion dans Mysql...
Tout ça me semble "conceptuellement" très simple (mais n'oublions pas que je ne suis qu'une fille ;o) En revanche, lorsqu'il s'agit de passer à la réalisation, je ne sais pas comment javascript veut envoyer une requete SQL, ni même si c'est possible... Tu sais si c'est possible ?

Peut-être qu'il faudrait passer par Ajax... mais Ajax, c'est comme mon niveau d'anglais ;o)


Sinon il faudra que j'adopte ta solution... En attendant, je vais réfléchir à la mise en place de ta solution voir si elle pourrait convenir dans mon contexte.

Merci pour cette réponse et à bientôt.


jeudi 25 décembre 2008 à 16:39:38 | Re : Pister le parcours du visiteur et sauvegarder dans une base MySQL

kohntark

Membre Club
Réponse acceptée !
Re,

Comme tu le dis, c'est une question de contexte. Si ton site contient des liens qui n'occasionnent pas un appel au serveur, comme par exemple une navigation par onglets qui seraient préchargés, le seul moyen reste l'utilisation d'Ajax.
Dans l'extrême majorité des cas le fait de cliquer sur un lien effectue une nouvelle requête au serveur, donc autant tout traiter côté php.

Toi ce que tu me proposes c'est non pas d'intercepter l'évènement onMouseUp, mais d'intercepter l'arrivée dans la page...
=> quelle différence cela fait il ? on ne récupère pas moins d'infos en faisant comme cela :o)

je ne sais pas comment javascript veut envoyer une requete SQL, ni même si c'est possible... Tu sais si c'est possible ?
=> Ajax obligatoirement


Si je prends un exemple précis :
dans la page x.php tu as le lien vers la page y

Que tu fasses :
<a href="y.php" id="2135" onmouseup="[machin]">y</a>

où [machin] est une fonction javascript qui appelle un script php via les XMLHTTPREQUEST en passant en paramètres l'id du lien et la page vers laquelle il pointe. Ce script enregistre ensuite les valeurs dans la table.

ou :
<a href="y.php?id_lien=2135" id="page_y">y</a>

et puis, côté serveur, sur la page y.php :
session_start();
$id_lien = $_GET['id_lien'];
/* tu peux également ajouter le HTTP_REFERER, les valeurs envoyées en POST, etc ...) */


INSERT INTO jetracelesvisiteurs (id_visiteur, date_heure_clic, reference_lien) VALUES ('$_SESSION['id']','date("Y-m-d H:i:s")', '$id_lien');

Je ne vois pas où peut se trouver la différence en terme de résultat. En terme de développement et de perf par contre il y en a de sacrées !!


En ce qui concerne le onmouseup je ne vois non plus pourquoi il serait mieux que onclick. Au contraire, c'est une source certaine de bugs, on peut très bien le déclencher alors que le lien n'a pas été cliqué, et donc envoyer de fausses informations.

Cordialement,


Kohntark-
jeudi 25 décembre 2008 à 22:04:50 | Re : Pister le parcours du visiteur et sauvegarder dans une base MySQL

karpediem

Merci pour ta réponse...

Après réflexion (si, si ça m'arrive aussi.. pas souvent, mais ça m'arrive ;o)) je crois que tu as raison !

Le plus simple va être de concevoir mon appli ce cette façon là : intercepter l'arrivée sur la page plutôt que l'appel de la page...

Quant au mouseMachin, c'était juste intuitif, tu sais, le truc de filles ;o)

C'est vrai que lorsque l'on réfléchit tout seul, on tourne vite en rond, alors qu'un avis extérieur, de surcroît pertinent (si, si, je parle de toi ;o)) ça fait toujours avancer le chimili-glubs-truc. ça y est, on a encore  -1 sur notre crédit d'échanges .

Bon et bien j'essaie de mettre ça en place et je reviendrai si je galère de trop...

Encore un grand MERCI et à bientôt !!


Cette discussion est classée dans : mysql, visiteur, parcours, souhaiterai, pister


Répondre à ce message

Sujets en rapport avec ce message

Probleme recuperation données [ par dyveud ] Salut tous, Voila j'ai un petit probléme, je debute en php/mysql j'essaye de crée un code mais en vain.J'aimerai afficher les 5 premier champ d'un cha problem connection a la base [ par ibramaroc ] jai un problem de connection (Warning: mysql_connect() [function.mysql-connect]: Unknown MySQL server host 'javamaroc' (1) in /home/ Php ou javascript ???????? gros pb [ par elisabeth_nov ] Bonjour, voilà je débute depuis un moment déjà mais j'ai toujours autant de difficultés!!!!Mon problème à l'heure actuelle est que je dois créer une p Base ciel vers mysql avec phpmyadmin [ par ewertheimer ] Bonjour,Je m'occupe actuellement d'un site où je dois faire un transfert de base de données du logiciel CIEL versune table de ma base mysql. Je me sui Stocker une image dans mysql [ par ewertheimer ] Bonjour,Pourriez vous m'aider sur la maniere dont je dois proceder pour stocker des images dans une base mysql. Je ne l'ai encore jamais fait je n'ai BD MySql vers fichier XML [ par lachaiseduroi ] Bonjour, J'ai créer une base de données Mysql avec 6 tables et je recherche comment l'exporter en un fichier XML. Je débute en PHP et Mysql et bien en SELECTION MYSQL [ par BURN ] Bonjour, J'ai un probleme lors d'une sélection de données dans MySQL. Dans ma table, j'ai 2 champs qui représente un age minimum et maximum. Lors de probleme requete en php [ par brudao ] Bonjour, j'ai un problème avec ma requete sql en php. je ne comprends pas trop pourquoi. l'erreur se passe lorsque je veux modifier la va leur par d Fonction UPDATE et requete WHERE [ par Graig083 ] Bonsoir,J'ai créé un formulaire relié à une base de donnée MySQL. Jusque là tout fonctionne.Dans un deuxième temps, j'aimerais pouvoir actualiser ma b Design et requête [ par didygwatinik ] Bonjour, Voilà mon problème après avoir cliqué sur recherche dans mon site, j'affiche le résultat d'une requête qui contient une image à gauche, et 3


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,296 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales