Liens cliqués

Résolu
Bonjour,
j'aimerais savoir s'il est possible de savoir quels liens sont cliqués sur mon site, autant ceux en interne que ceux qui vont vers d'autres sites ? c'est pour gérer un peu mieux mon contenu...

je me sers bien de google analytics, mais il ne donne que les pages visités...
Configuration: Windows 7
Firefox 3.5.5

11 réponses

  1. un programme php qui enregistre un nombre dans un fichier texte puis qui redirige vers la prochaine page, après un programme php avec include() qui met tous les compteurs (le deuxième programme est optionnel, mais utile si tu ne veut pas visiter à chaque fois le lien du fichier texte de chaque page).
    1. Pour savoir le nombre de fois que une page (ou plusieurs) a été visité: Php suffit
      Pour savoir le nombre de fois que les liens ont été cliqué: Ajax + Php
      Pour savoir le nombre de fois que les liens internes on été cliqué: Php usant la superglobale $_SERVER

      Cordialement Zestyr
      1. je ne suis pas un pro mais bon je fais pas que de la programmation je fais surtout du jeu ...
        1. Il y a un script que je trouve pas mal pour sa : http://www.spongestats.org/

          Il y en a beaucoup d'autre mais perso je trouve que c'est le meilleur

          Après a toi de voir ;)

          ( tu a besoin d'une base de donné sql )
          1. Je ne suis pas un pro mais bon je fais pas que de la programmation je fais surtout du jeu ...

            Comme aparament tu veux pas faire mumuze j'ai pris la releve et je t'ai codé vite fait un tit script à utilisation très simple.

            Mets les deux fichier (.php et .js) dans le meme répertoire de ta page en gardant les noms qui sont indiqués et ajoute la balise à la fin de ta page :
            <script type="text/javascript" src="compteur.js"></script>


            Et il te sufira de ajouter tes lien comme dab avec les balises <a></a> et le reste tu t'en fou...
            Bon jte lache les codes:
            ======================== compteur.js =====================================
            
            /* Codé par Zestyr */
            
            	var liens = document.getElementsByTagName("a");
            	var i = 0;
            	while(liens[i] != undefined)
            	{
                    var sHref = liens[i].href;
            		liens[i].href = "javascript:saveAndGo('"+sHref+"');";
            		i++;
                } 
            	function saveAndGo(sLien)
            	{
            		xhr = getXMLHttpRequest();
            		xhr.open("POST", "compteur.php", true);
            		xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
            		xhr.send("sLien="+sLien);
            		window.location.replace(sLien);
            	}
            	/* Codé par Thunderseb: https://openclassrooms.com/fr/courses/245710-ajax-et-lechange-de-donnees-en-javascript/244798-lobjet-xmlhttprequest */
            	function getXMLHttpRequest() {
            		var xhr = null;
            	
            		if (window.XMLHttpRequest || window.ActiveXObject) {
            			if (window.ActiveXObject) {
            				try {
            					xhr = new ActiveXObject("Msxml2.XMLHTTP");
            				} catch(e) {
            					xhr = new ActiveXObject("Microsoft.XMLHTTP");
            				}
            			} else {
            				xhr = new XMLHttpRequest(); 
            			}
            		} else {
            			alert("Votre navigateur ne supporte pas l'objet XMLHTTPRequest...");
            			return null;
            		}
            	
            		return xhr;
            	}
            
            
            
            ======================================================================
            ====================== compteur.php ======================================
            
            /* Codé par Zestyr */
            
            $lien = (isset($_POST["sLien"])) ? $_POST["sLien"] : null;
            if($lien != null)
            {
            	$file = fopen($lien.'.txt', 'a');
            	fclose($file);
            
            	$file = fopen($lien.'.txt', 'r+');
            	$nbFois = fgets($file);
            	$nbFois++;
            	fseek($file, 0);
            	fputs($file, $nbFois); 
            	fclose($file);
            }
            
            ======================================================================
            


            Bye
            1. merci mais je l'ai déjà coder dans l'aprem en fait...

              <?php 
              
              include('config.php');
              
              $lien = $_GET['lien'];
              $page = $_GET['page'];
              $date = date('d/m/Y');
              $heure = date('H:i');
              
              $cliques = mysql_query('INSERT INTO cliques SET lien="'.$lien.'", page="'.$page.'", date="'.$date.'",heure="'.$heure.'"');
              
              header("Location: http://".$lien);
              
              ?>


              avec un lien :
              <a href="lien.php?lien=exemple.com&page=lapage">exemple.com</a>


              avec un php pour afficher les résultats et ça marche nickel...
              1. Si tu as résolu ton problème, passe donc le statu en résolu en haut de la page.
                1. désolé j'avais zappé...

                  par contre zestyr, j'ai pas bien compris ton message (qui n'y est plus d'ailleurs) : "C'est intelligent d'inclure des pages sans vérification . . . "

                  tu peux me dire si j'ai oublié quelque chose ?
                  1. Non enfait c'était une réflexion déplacé, j'ai lu en vitesse ... Autant pour moi.