#1 2005-01-12 14:06:53

qwertz
Membre
Suisse
2004-10-08
71

calcul du nombre de visiteurs

Bonjour,

encore une question SQL du même type que la précédente ...
Mes connaissances se limitant à Cisco et Checkpoint, j'ai un peu de mal ...

J'ai insérer le code pour le calcul des visiteurs mais le problème se siture au niveau du bout de code sql:

...  SELECT DISTINCT(IP) ....

dans le code

Code:

/*nb_visiteurstotal*/
$query = 'SELECT COUNT(DISTINCT(IP)) AS nb_visiteurstotal';
$query.= ' FROM '.PREFIX_TABLE.'history';
$query.=';';
$row = mysql_fetch_array( mysql_query( $query ) );
$row['nb_visiteurstotal']=$row['nb_visiteurstotal'];
$vtp->setGlobalVar( $handle, 'nb_visiteurstotal', $row['nb_visiteurstotal'] );

Avec ce code, le compteur visiteur est incrémenté seulement lors de nouvelles adresses IP dans la table.
Je souhaiterais que le nombre de visiteur soit égal à la somme des visteurs displayés sur la page admin - > historique (version 1.3.x bien sur) pour qu'il reflète mieux la réalité.
Si on a une personne se connectant au net derrière un proyx, il y a de fortes chance qu'elle sorte toujours avec la même adresse IP (NAT/Hide). On aura donc toujours 1 visiteur même si cette personne se sera connéctés tous les jours de l'année.

Le but est de limiter la durée temps de  "DISTINCT(IP)" à un jour ....


comment faire?

Merci

Qwertz

Dernière modification par qwertz (2005-01-13 09:35:54)

Hors ligne

#2 2005-01-13 16:45:52

qwertz
Membre
Suisse
2004-10-08
71

Re: calcul du nombre de visiteurs

CE qui me pose un problème, c'est le formatage de la date dans la base SQL ...

Hors ligne

#3 2005-01-13 19:09:11

plg
Équipe Piwigo
Nantes, France, Europe
2002-04-05
12671

Re: calcul du nombre de visiteurs

ce n'est pas "trivial", mais tu peux faire ainsi :

Code:

$total = 0;
$query = '
SELECT COUNT(DISTINCT(IP)) AS count
  FROM  '.PREFIX_TABLE.'history
  GROUP BY DATE_FORMAT(FROM_UNIXTIME(date),\'%Y-%m-%d\')
;';
$result = mysql_query($query);
while ($row = mysql_fetch_array($result))
{
  $total+= $row['count'];
}
$vtp->setGlobalVar( $handle, 'nb_visiteurstotal', $total);

edit : merci Sephi pour les corrections, j'ai reporté tes modifs dans le bout de code original et j'ai supprimé les posts inutiles pour ceux qui se poseront le même problème plus tard :-)

Dernière modification par z0rglub (2005-01-13 22:48:12)


Les historiens ont établi que Pierrick était le premier utilisateur connu de Piwigo.

Hors ligne

#4 2005-01-13 21:11:48

qwertz
Membre
Suisse
2004-10-08
71

Re: calcul du nombre de visiteurs

Excellentissime (!!!)

Merci ca marche parfaitement ....

Hors ligne

#5 2005-02-13 14:47:14

jed
Membre
2005-01-16
15

Re: calcul du nombre de visiteurs

Bonjour,

L'idée de QUERTZ est excellente, mais voulant inclure le code, je n'arrive pas à avoir le résultat désiré...
En retour j'ai tout simplement :

"Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /phpwebgal14/admin/stats.php on line 84

Fatal error: Call to a member function setGlobalVar() on a non-object in /phpwebgal14/admin/stats.php on line 88"

La ligne 84 étant :" $result = mysql_query($query); "
la ligne 88 :" $vtp->setGlobalVar( $handle, 'nb_visiteurstotal', $total); "

Ce code a été inclus au fichier /admin/stats.php a hauteur de la ligne 76.
Serait-il possible d'avoir le code complet pour cette fonctionnalité et où l'inclure pour ne pas perturber le reste du code.

ps : mes connaissances en PHP sont très limitées !!, mais j'apprends.

Merci d'avance

Hors ligne

#6 2005-02-14 10:12:33

qwertz
Membre
Suisse
2004-10-08
71

Re: calcul du nombre de visiteurs

attention, c'est qwertz et non Quertz :-)

version 1.3.x

Dans category.php

après summary:

/*nb_visiteurs*/
$total = 0;
$query = '
SELECT COUNT(DISTINCT(IP)) AS count
  FROM  '.PREFIX_TABLE.'history
  GROUP BY DATE_FORMAT(FROM_UNIXTIME(date),\'%Y-%m-%d\')
;';
$result = mysql_query($query);
while ($row = mysql_fetch_array($result))
{
  $total+= $row['count'];
}
$vtp->setGlobalVar( $handle, 'nb_visiteurstotal', $total);



Dans category.vtp

rajouter:

<div class="totalImages">[ {#nb_visiteurstotal} visiteurs]</div>

à l'endroit désiré.

Slts

Hors ligne

#7 2005-02-14 12:52:49

vimages
Membre
2004-03-27
2429

Re: calcul du nombre de visiteurs

super...
je vais essayer de le mettre dans la 1.4 dans la page admin...

crois tu que l'on pourrais ajouter en dessous les noms de log des visiteurs présents et enregistrés, puis le totalde visiteurs présents non enregistrés..?

eric.

Hors ligne

#8 2005-02-14 15:52:25

latriche
Membre
2005-01-26
200

Re: calcul du nombre de visiteurs

et pour la 1.4, c'est a quelle ligne qui fo rajouter le code


L'erreur est humaine mais un véritable désastre nécessite un ordinateur

http://fcdombes.free.fr/galeriephotos/category.php

Hors ligne

#9 2005-02-14 18:59:13

jed
Membre
2005-01-16
15

Re: calcul du nombre de visiteurs

Oups,

En effet, ma question portait sur la 1.4...

Merci quand même pour la réponse quertz.
Si jamais tu l'as pour la 1.4, ou si Eric (Vimages) l'a, je suis preneur.

Encore merci à tous
Jean-Eric

Hors ligne

#10 2005-02-27 19:17:49

jed
Membre
2005-01-16
15

Re: calcul du nombre de visiteurs

Toujours pas de réponse à ce petit problème ??
Je suis toujours preneur du code pour la version 1.4

Merci d'avance

Hors ligne

#11 2005-10-03 00:09:44

loicosss
Membre
Lille
2005-04-05
33

Re: calcul du nombre de visiteurs

Bonjour, j'ai installé un compteur aujourd'hui et il s'incremente à chaque changement de page. J'utilise la version 1.4 et c'est vrai que ca serait sympa si quelq'un avait l'info sur l'endroit exact et les lignes de commandes à rajouter pour éviter que une Ip ne soit comptée qu'une fois à vie mais en meme temps quelle ne soit pas comptée 30 fois quand on change de page.

Le code au dessus est il valable pour la 1.4?
Merci de votre réponse.


Toutes mes aventures sur mon site,
http://loicosss.free.fr

Hors ligne

#12 2005-10-03 00:39:40

POLO
Membre
2005-08-11
61

Re: calcul du nombre de visiteurs

Hors ligne

Pied de page des forums

Propulsé par FluxBB

github twitter newsletter Faire un don Piwigo.org © 2002-2024 · Contact