Bonjour,
J'ai créer un petit compteur de visite pour pouvoir ensuite faire des statistique journalière avec un graphique.
Je voudrai savoir comment faire en sorte que ma fonction incrémente la dernière ligne de mon fichier texte tant que la date et identique
et que le jour d'après il ajoute la nouvelle ligne et qu'il prenne automatiquement la dernière ligne ensuite pour l'incrémenter?
pour l'instant j'utilise Fseek et je calcule la position avec sa, mais sa marche pas super bien..
Fonction compteur():
résultat:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48 <? // Compteur PHP de hits function compteur(){ $mois = date("j F Y"); //verifier si la date et toujours la même //et regarde a qu'elle ligne elle est la meme $fichier = "compteur.txt"; $fp = fopen ($fichier,"r+"); $nb_ligne=0; while($row=@fgets($fp)){ $jourfichier = explode("|", $row); $fseekcpt = strlen($jourfichier[0]); $fseekdate = strlen($jourfichier[1]); $fseeklg = strlen($jourfichier[2]); $fseek = (($fseekcpt + $fseekdate + $fseeklg)+2)+@$fseek; if ($jourfichier[1] == $mois) { $lg = $jourfichier[2]; $fseek = ((($fseek - $fseekcpt) -$fseekdate) -$fseeklg)+$lg; $cpt=++$jourfichier[0]; fseek($fp,$fseek); fputs($fp,$cpt."|"); fputs($fp,$mois."|"); fputs($fp,$lg."|"); fclose($fp); $ok=1; } $nb_ligne++; } if (@$ok != "1"){ $lg = ++$jourfichier[2]; $lg = ++$jourfichier[2]; $fp = fopen ($fichier,"a+"); $cpt=$jourfichier[0]; fputs($fp,$cpt."|"); fputs($fp,$mois."|"); fputs($fp,$lg."|"); fclose($fp); } } ?>
81832|13 August 2007|10|
83776|14 August 2007|12|
84054|15 August 2007|14|
et quand sa bugue sa donne sa:
83776|14 August 2007|12|
84054|15 August 2007|14|84054|15 August 2007|14|84054|15 August 2007|14|84054|15 August 2007|14|84054|15 August 2007|14|84054|15 August 2007|14|84054|15 August 2007|14|84054|15 August 2007|14|84054|15 August etc...
Partager