[PHP] Quelques compteurs en PHP

  • Thread starter Membre supprimé 492129
  • Start date

    Publicités

Users Who Are Viewing This Thread (Total: 1, Members: 0, Guests: 1)

M

Membre supprimé 492129

Hi there!

J'ai vu qu'il y avait un post sur un compteur de connectés dynamique. Je vais vous en présenter d'autres (statiques & non dynamique :/). Mais vous pouvez suivre l'autre tutoriel pour rendre ces scripts dynamiques, à vous de les adapter ;)

I. Compteur de pages vues:

Code:
<?php
if(file_exists('nb_pagevue.txt'))
{
        $compteur_f = fopen('nb_pagevue.txt', 'r+');
        $compte = fgets($compteur_f);
}
else
{
        $compteur_f = fopen('nb_pagevue.txt', 'a+');
        $compte = 0;
}
$compte++;
fseek($compteur_f, 0);
fputs($compteur_f, $compte);
fclose($compteur_f); 
echo '<strong>'.$compte.'</strong> pages vues.';
?>

Ce que va faire le script c'est tout simplement vérifier si le fichier existe, s'il n'existe pas il le créé et ajoute 1 et s'il existe, il ajoute 1. Et affiche le nombre de pages vues. C'est simple comme Bonjour :).

II. Compteur de visites:

Code:
<?php
session_start();
if(file_exists('nb_visites.txt'))
{
        $compteur_f = fopen('nb_visites.txt', 'r+');
        $compte = fgets($compteur_f);
}
else
{
        $compteur_f = fopen('nb_visites.txt', 'a+');
        $compte = 0;
}
if(!isset($_SESSION['compteur_de_visite']))
{
        $_SESSION['compteur_de_visite'] = 'visite';
        $compte++;
        fseek($compteur_f, 0);
        fputs($compteur_f, $compte);
}
fclose($compteur_f);
echo '<strong>'.$compte.'</strong> visites.';
?>

Ici aussi c'est simple! Le script vérifie si le fichier existe, s'il existe, il ajoute 1, s'il n'existe pas il le créé et ajoute 1. On utilise aussi les sessions pour ne comptabiliser que les visites, c'est à dire que si la personne navigue sur plusieurs pages, seul 1 visite ne sera comptée.

III. Compteur du temps d’exécution de la page:

Code:
<?php
function chrono()
{
    $temps = explode(' ', microtime());
    return $temps[0]+$temps[1];
}
$start = chrono();
?>
<html>
    <!-- Le contenu de votre page -->
        Page g&eacute;n&eacute;r&eacute;e en <?php echo round(chrono()-$start,6); ?> secondes.
    </body>
</html>

Le script va tout simplement utiliser la function microtime qui permet de savoir en combien de temps la page a été générée. Puis split les deux parties du microtime et les additionner. La function chrono retournera la valeur. Donc pour afficher le temps de génération de la page, il suffit de echo $start.