Page 1 sur 1

compteur de clics

Posté : 21 janv. 2012, 23:36
par lynyrd
Bonjour
Sur ma page d'accueil,je propose en téléchargement des fichiers sportifs au format xls et je souhaiterai qu'en dessous de chaque lien s'affiche le nombre de fois que le lien a été visité.
Au départ sur ma page HTML j'avais ceci

<a href = "tableaux/ligue1_saison_2011_2012.rar">LIGUE 1 Saison 2011/2012</a>

et maintenant avec le code PHP

<a href="link.php?url=http://grattis.free.fr/index.php/tablea ... rar"><font size = 5 font color = yellow><b>LIGUE 1 Saison 2011/2012</b></font></a><br>
link.php:
<font size="3" color="white">
<b><?php
$url=$_GET['url'];
$fp=fopen("compteur1.txt","r+") ;
$nb=fgets($fp,10);
$nb++;
fseek($fp,0);
fputs($fp,$nb);
fclose($fp);
print("$nb Téléchargements");
?></b>
Le nombre s'inscrit bien en dessous du lien mais je pense qu'il s'agit d'un compteur de pages vues et le fichier n'est plus disponible en téléchargement (erreur 404).
quelqu'un pourrait t'il m'aider sur ce problème étant complétement novice en PHP.
Merci.

Re: compteur de clics

Posté : 21 janv. 2012, 23:55
par moogli
salut,

il faut a chaque arrivée sur la page (link.php
- récupérer le nom du fichier (pas la peine de mettre toute l'url, si c'est ton site juste le fichier voir juste une référence c'est amplement suffisant).
- modifier le nb de clic
- envoyer le fichier

1/ déjà dans ton code (avec $_GET)
2/ incrément d'un fichier ou d'une base de donnée ou autre
3/ utiliser la fonction header pour envoyer le fichier (voir exemple dans la doc).


@+

Re: compteur de clics

Posté : 22 janv. 2012, 00:12
par lynyrd
Merci pour ta réponse mais je comprends absolument rien
je n'ai aucune connaissance en PHP.
A+

Re: compteur de clics

Posté : 22 janv. 2012, 20:47
par moogli

Re: compteur de clics

Posté : 23 janv. 2012, 22:33
par lynyrd
Re
Bonsoir
qu'est ce qui cloche cette fois ci dans le code quelqu'un aurait t'il une idée.
Merci.
<?php
if(isset($_GET['nom'])){
$concatenation= 'compteur' . $_GET['nom'] . '.txt';
$fp = fopen($concatenation,"r+")or die ("could not create file."); // 1.On ouvre le fichier en lecture/écriture
$nb= fgets($fp,11); // 2.On récupère le nombre dans le fichier
$nb++; // 3.On incrémente le nombre de telechargements(+1)
fseek($fp,0); // 4.On se place en début de fichier
fputs($fp,$nb); // 5.On écrit dans le fichier le nouveau nb
fclose($fp); // 6.On ferme le fichier
}
?>
<a href="page_telechargement.php?nom=1" onclick=window.open('tableaux/ligue1_saison_2011_2012.rar');><b><font color="yellow"><font size = 5>LIGUE 1 Saison 2011/2012</font></b></a><br><font size="3"><?
// target="_blank" en option
<font color = "yellow" font size = 2>
<?php
$fpT1 = fopen("compteur1.txt","r+"); // 1.On ouvre le fichier en lecture/écriture
$nbT1= fgets($fpT1,11); // 2.On récupère le nombre dans le fichier

print("Ce fichier à été télechargé $nbT1 fois "); // 3.On affiche le compteur à l'écran

fclose($fpT1); // 4.On ferme le fichier
?>
</font>