Top clics avec compteurs en fichiers texte?
Della.Zora
Messages postés
3
Statut
Membre
-
balou01 Messages postés 86 Statut Membre -
balou01 Messages postés 86 Statut Membre -
Bonjour,
Je me permet de poster ce sujet car je recherche de l'aide pour éclairer ma lanterne.
J'ai un compteur de page sur mon site, où les visites sont stockées dans un fichier texte.
J'aimerai afficher sur ma page d'accueil un top 10 des pages les plus visitées mais là je vous avoue que je bloque:
Je ne sais pas comment faire, où du moins quelles variables utiliser, pour scanner tous les fichiers compteurs et sélectionner ceux à la valeur la plus élevée et ensuite les afficher dans cet ordre?
J'ai cherché mais je n'ai pas trouvé de réponses solutionnant mon problème et comme j'apprends à programmer au fil de l'eau et toute seule, c'est pas forcément évident.
Voila.
Merci en tout cas à ceux qui pourront me donner un coup de pouce.
Della
Je me permet de poster ce sujet car je recherche de l'aide pour éclairer ma lanterne.
J'ai un compteur de page sur mon site, où les visites sont stockées dans un fichier texte.
J'aimerai afficher sur ma page d'accueil un top 10 des pages les plus visitées mais là je vous avoue que je bloque:
Je ne sais pas comment faire, où du moins quelles variables utiliser, pour scanner tous les fichiers compteurs et sélectionner ceux à la valeur la plus élevée et ensuite les afficher dans cet ordre?
J'ai cherché mais je n'ai pas trouvé de réponses solutionnant mon problème et comme j'apprends à programmer au fil de l'eau et toute seule, c'est pas forcément évident.
Voila.
Merci en tout cas à ceux qui pourront me donner un coup de pouce.
Della
A voir également:
- Top clics avec compteurs en fichiers texte?
- Renommer des fichiers en masse - Guide
- Transcription audio en texte word gratuit - Guide
- Top site telechargement - Accueil - Outils
- Fichiers epub - Guide
- Mettre un texte en majuscule - Guide
1 réponse
Dans le protocole il faut :
1/ Ouvrir ton fichiers texte
2/ Lire les donné
3/ Compter le nombre de fois que tu vois chaque page
4/ Récupérer les 10 plus élevées
5/ Les afficher...
C'est pas une mince a faire tout ca !!! lol
Mais essai de t'inspirer de ca :
Je l'ai fait et testé en local donc il faut voir si ca marche en ligne mais il n'y a pas de raison....
voilou ! ;)
1/ Ouvrir ton fichiers texte
2/ Lire les donné
3/ Compter le nombre de fois que tu vois chaque page
4/ Récupérer les 10 plus élevées
5/ Les afficher...
C'est pas une mince a faire tout ca !!! lol
Mais essai de t'inspirer de ca :
<?php
#######
$chemin_fichier_texte = './statistics.txt'; // Indique le chemin de ton fichier texte Ex : $chemin_fichier_texte = './www/script/comptage/chemin_de_ton_fichier_texte.txt';
$nb_de_resultat_affiche = 5; // Nombre de résultat que tu souhaite afficher
#######
$pattern = array(); // Creation du tableau $pattern
#######
# Ici c'est a toi de rentrer les expression régulière (Regex) pour voir tes pages
# Il y a autant de $pattern[...] qu'il y a de pages dans ton site
$pattern[0] = 'http://mon-site.fr/page_1.html'; // Ex : $pattern[0] = 'http://mon-site.fr/page_1.html';
$pattern[1] = 'http://mon-site.fr/page_2.html'; // Ex : $pattern[1] = 'http://mon-site.fr/page_2.html';
$pattern[2] = 'http://mon-site.fr/page_3.html'; // Ex : $pattern[2] = 'http://mon-site.fr/page_3.html';
$pattern[3] = 'http://mon-site.fr/page_4.html'; // Ex : $pattern[3] = 'http://mon-site.fr/page_4.html';
$pattern[4] = 'http://mon-site.fr/page_5.html'; // Ex : $pattern[4] = 'http://mon-site.fr/page_5.html';
// . . .
#
#
#######
$nb_pge = 0;
$nb_pge = count($pattern); // Compte le nombre total de page
$nb_view = array(); // Creation du tableau $nb_view
$nb_ligne = 0;
if($handle =fopen($chemin_fichier_texte, 'r')) // Ouverture du fichier texte en lecture seule
{
if($fichier = fread($handle, filesize($chemin_fichier_texte))) // Lecture du fichier
{
$array_ligne = file($chemin_fichier_texte); // Creation d'un tableau "ligne par ligne" de ton fichier texte
$nb_ligne = count($array_ligne); // Compte le nombre de ligne que contient ton fichier texte
$j = 0; // Initialisation de $j
while($j <= $nb_pge) // Boucle sur les différentes pages de ton site
{
$i = 0; // Initialisation de $i
$nb_view[$j] = 0; // Initialisation de $nb_view[$j]
foreach($array_ligne as $ligne) // Boucle sur les ligne du fichier texte
{
if(preg_match('#' . $pattern[$j] . '#', $ligne)) // Reconnaissance de l'expression régulière en cause : $pattern[$j]
{
$nb_view[$j]++; // Incrémentation du nombre de vu de la page en question
}
}
$j++; // Incrémentation du nombre de page
}
}
fclose($handle); // Fermeture du fichier texte
}
unset($nb_view[$nb_pge]); // Supprime la derniere clé du tableau
rsort($nb_view); // Classement par odre décroissant :
$i = 0;
while($i < $nb_de_resultat_affiche) // Boucle pour afficher les $nb_de_resultat_affiche a afficher !
{
$num_page = count($nb_view) - $i;
echo 'La page ' . $num_page . ' a été vu : ' .$nb_view[$i] . ' foi(s)<br />';
$i++;
}
?>
Je l'ai fait et testé en local donc il faut voir si ca marche en ligne mais il n'y a pas de raison....
voilou ! ;)