bshaka
Messages postés22Date d'inscriptionmercredi 11 avril 2007StatutMembreDernière intervention17 juin 2008
-
3 avril 2008 à 14:29
bshaka
Messages postés22Date d'inscriptionmercredi 11 avril 2007StatutMembreDernière intervention17 juin 2008
-
4 avril 2008 à 17:36
Bonjour à tous,
Je cherche à installer un compteur dans ma page d'accueil, ça ne fonctionne pas, j'ai la valeur qui se trouve dans le fichier "compteur.txt", mais il ya un problème pour incrémenter.
Vous allez me dire que c'est un problème de droits d'accès au fichier "compteur.txt", peut-être, pourtant, mon hébergeur (NFrance)suggère de créer un dossier data et mettre le fichier "compteur.txt" dans ce dossier, bien sûr il laisse la possibilité de modifier les droits d'accès (dossier "data" et fichier "compteur.txt ont les attributs "rwxrwxrwx") à partir d'un prog. ftp.
Merci à vous.
<?php
$nom = "compteur.txt";
if (file_exists($nom)) {
// afficher la valeur du compteur d'accès à la page
$fichier = fopen($nom, "r"); // ouverture en lecture seule
$decompte = fgets($fichier, 9); // on limite le compteur à 10 milliards d'accès
echo <<
Cette page a été vue
$decompte
fois.
AFFICHER;
fclose($fichier);
// incrémenter le compteur d'accès à la page
$decompte++;
// sauvegarder le compteur
$fichier = fopen($nom, "w"); // ouverture en écriture, l'ancier fichier est détruit
fputs($fichier, $decompte, 9);
fclose($fichier);
}
else {
echo "Le compteur n'existe pas ($nom)
";
}
?>
bshaka
Messages postés22Date d'inscriptionmercredi 11 avril 2007StatutMembreDernière intervention17 juin 2008 4 avril 2008 à 17:36
Merci pour le lien,
J'ai trouvé, le problème vient de l'incrémentation ($nbvisites++);
Pourquoi, je ne sais pas pourquoi, ça marche en faisant (fputs($fp,$nbvisites+1);
<?
$fp = fopen("data/compteur.txt","r+"); // 1.On ouvre le fichier en lecture/écriture
$nbvisites = fgets($fp,11); // 2.On récupère le nombre dans le fichier
$nbvisites++; // 3.On incrémente le nombre de visites(+1)
fseek($fp,0); // 4.On se place en début de fichier
fputs($fp,$nbvisites+1); // 5.On écrit dans le fichier le nouveau nb
fclose($fp); // 6.On ferme le fichier
print("$nbvisites visiteurs"); // 7.On affiche le compteur à l'écran
?>