IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Compteur chargement page [PHP 5.3]


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Consultant E-Business
    Inscrit en
    Mai 2011
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant E-Business
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2011
    Messages : 17
    Par défaut Compteur chargement page
    Bonjour,

    Je souhaiterais faire un compteur de chargement (sur une seule page de mon site), qui s'incrémente donc à chaque rechargement de la page (par exemple, si on la rafraîchis, ça fait +1).

    Tout simple mais bon... ça fonctionne pas.

    Je précise que je souhaiterais :

    - pouvoir donner une typo spéciale au chiffres
    - que leur couleur soit verte
    - avoir un compteur qui peut augmenter jusqu'à 6 chiffres.
    - que le compteur soit centré sur la page

    Donc pour l'instant j'ai ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <center>
    <?php
    session_start(); 
    @$_SESSION["pagecount"]++; 
    print("$pagecount");
    ?>
    </center>
    Mais ça ne fonctionne pas

    Je sais c'est très débutant mais bon, en même temps là c'est la catégorie "Débutants"

    Sinon j'ai une autre piste, mais idem... fonctionne pas

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    if( isset($count) ) 
    { 
       $count = $count + 1; 
    } 
    else 
    { 
       $count = 1; 
    }
    J'espère que vous saurez m'aider !

    Merci.

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 18
    Par défaut
    une des solutions possible est de passer par un fichier text pour enregistrer la valeur de ton compteur
    la variable session etant réinitialisé a chaque fois pour chaque visiteur tu n'ora pas le nombre de visite total de la page.
    Par contre tu peux utiliser la variable session pour que ta fonction d'incrémentation n'enregistre qu'une fois la visite du visiteur sur cet page dans la session. De cette facon, tu oras le nombre de visiteur de la page et non le nombre d'affichage de la page.

  3. #3
    Membre éprouvé
    Homme Profil pro
    Lycéen
    Inscrit en
    Décembre 2008
    Messages
    106
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Décembre 2008
    Messages : 106
    Par défaut
    on je comprends pas si tu veux afficher :
    1. le nombre de chargements total de ta page
    2. le nombre de chargements de ta page par l'utilisateur courant
    3. le nombre d'utilisateurs visitant ta page


    Dans le cas 1 :
    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
     
    <?php
    define('HITS_FILE', 'hits.txt');
    function handle_hits()
    {
        static $hits_count = 0;
        if(!$hits_count)
        {
            if(!file_exists(HITS_FILE)) touch(HITS_FILE);
            $fp = fopen(HITS_FILE, 'r+');
            $hits_count = 1+(int)fread($fp, 1024);
            fwrite($fp, (string)$hits_count);
            fclose($fp);
        }
        return $hits_count;
    }
     
    $hits_count = handle_hits();
    ?>
     
    Ce fichier a été chargé <?php echo $hits_count ?> fois.
    (c'est un exemple non testé)

  4. #4
    Membre averti
    Homme Profil pro
    Consultant E-Business
    Inscrit en
    Mai 2011
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant E-Business
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2011
    Messages : 17
    Par défaut
    Bonjour,

    tout d'abord merci pour vos réponses.

    Je ne souhaite pas passer par un fichier.

    Je souhaite que le compteur compte combien de fois la page a été rafraîchie (soit le nombre de chargements total de ma page).

    Je ne souhaite pas que cette valeur soit enregistrée où que ce soit (bdd, fichier texte ou autre page).

    Simplement :

    - lorsqu'on ouvre cette page, et qu'on la rafraîchis, ça fasse +1 au compteur.

    Après, si on ferme la page, et qu'on revient dessus, le compteur est de nouveau à 0.

    J'ai testé ton script lucas, ça ne fonctionne pas.

    Je pense que ce que je souhaite se rapproche + du second code que j'ai fournis.

    Ce que je souhaite est très simple, donc le code ne doit pas être très complexe.

    Ainsi, je répète :

    1. On arrive sur la page
    2. Compteur = 0.
    3. On rafraîchit cette page.
    4. Compteur = 1.
    5. On re rafraîchit cette page.
    6. Compteur = 2.
    7. On quitte (ferme) cette page.
    8. On revient sur cette page.
    9. Compteur = 0.

    Aucune variable n'est gardée, dès qu'on ferme la page, la variable "i" (nombre de rechargements) est remise à 0.

    Je souhaite aussi mettre ce compteur en vert (les chiffres, de couleur verte) et aussi que le compteur soit centré et qu'il soit de la typo que je veux (les chiffres) et qu'il puisse monter à 999999 (soit 6 chiffres max).

    Voilà

    Tout simplement.

    Simple mais ça fonctionne pas quand même !

    Merci à vous !!

  5. #5
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    si par "rafraichir" tu veux dire "cliquer sur le bouton 'actualiser' du navigateur" :
    une solution (bancale, je l'admets)
    sur la page "la-page-a-compter.php" :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?php session_start();
    if( isset($_SESSION['compteur']) ) {
    	$_SESSION['compteur']++;
    } else {
    	$_SESSION['compteur'] = 1;
    }
    ?>
     
    <?php echo $_SESSION['compteur'];?>
    sur toutes les autres pages :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <?php session_start();
    	$_SESSION['compteur'] = 0;
    ?>
    Mais je vois mal quelqu'un cliquer 999999 fois sur ce bouton ...

    Par contre, si c'est une actualisation "sans rechargement de page" après modification de données (via "ajax" par exemple), c'est autre chose !
    Dernière modification par Invité ; 15/08/2011 à 10h12.

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 18
    Par défaut
    une autre solution :
    tu met dans ton index ou dans ton controleur principal la code suivant

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    if(!isset($_SESSION['compteur'] and $_POST['page']=='page-a-compter'){
       $_SESSION['compteur']=1;
    }
    if(isset($_SESSION['compteur'] and $_POST['page']=='page-a-compter'){
        $_SESSION['compteur']++;
    }
    if($_POST['page']<>'page-a-compter')
       $_SESSION['compteur']=0;
    }

  7. #7
    Membre éprouvé
    Homme Profil pro
    Lycéen
    Inscrit en
    Décembre 2008
    Messages
    106
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Décembre 2008
    Messages : 106
    Par défaut
    Citation Envoyé par je.rochebrochart Voir le message
    Bonjour,

    tout d'abord merci pour vos réponses.

    Je ne souhaite pas passer par un fichier.

    Je souhaite que le compteur compte combien de fois la page a été rafraîchie (soit le nombre de chargements total de ma page).

    Je ne souhaite pas que cette valeur soit enregistrée où que ce soit (bdd, fichier texte ou autre page).

    Simplement :

    - lorsqu'on ouvre cette page, et qu'on la rafraîchis, ça fasse +1 au compteur.

    Après, si on ferme la page, et qu'on revient dessus, le compteur est de nouveau à 0.

    J'ai testé ton script lucas, ça ne fonctionne pas.

    Je pense que ce que je souhaite se rapproche + du second code que j'ai fournis.

    Ce que je souhaite est très simple, donc le code ne doit pas être très complexe.

    Ainsi, je répète :

    1. On arrive sur la page
    2. Compteur = 0.
    3. On rafraîchit cette page.
    4. Compteur = 1.
    5. On re rafraîchit cette page.
    6. Compteur = 2.
    7. On quitte (ferme) cette page.
    8. On revient sur cette page.
    9. Compteur = 0.

    Aucune variable n'est gardée, dès qu'on ferme la page, la variable "i" (nombre de rechargements) est remise à 0.

    Je souhaite aussi mettre ce compteur en vert (les chiffres, de couleur verte) et aussi que le compteur soit centré et qu'il soit de la typo que je veux (les chiffres) et qu'il puisse monter à 999999 (soit 6 chiffres max).

    Voilà

    Tout simplement.

    Simple mais ça fonctionne pas quand même !

    Merci à vous !!
    Quoi qu'il en soit tu devras passer par un fichier.. Que ce soit directement (fopen) ou indirectement (base de données, sessions)...
    Tout est fichier !

  8. #8
    Membre averti
    Homme Profil pro
    Consultant E-Business
    Inscrit en
    Mai 2011
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant E-Business
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2011
    Messages : 17
    Par défaut
    @lucas: il y a forcément une possibilité de passer outre...
    @jreaux: mon code est le même que celui souligné par FirePrawn. Strictement le même. Et j'ai bien entendu changé les bonnes correspondances. Cela fonctionne très bien (ce code là). Mais dès que je change :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <meta http-equiv="refresh" content="3">
    par

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <script type="text/javascript">
    setTimeout("window.location='test2.php'",3000); 
    </script>
    eh bien ça ne fonctionne plus...

    Sans ce JS ça fonctionne mais impossible de remettre le compteur à 0.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 17/08/2007, 14h13
  2. compteur de pages imprimante
    Par mahboub dans le forum Périphériques
    Réponses: 1
    Dernier message: 30/10/2005, 23h08
  3. chargement pages php + cache navigateur
    Par grinder59 dans le forum Langage
    Réponses: 6
    Dernier message: 06/10/2005, 14h44
  4. [Tableaux] Chargement pages dynamique
    Par pittacos dans le forum Langage
    Réponses: 4
    Dernier message: 21/09/2005, 10h41
  5. fenetre sans bords pour attente chargement page
    Par k4eve dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 30/11/2004, 10h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo