Recherche de script compteur

pat
Eléphant du PHP | 132 Messages

25 févr. 2006, 09:30

Bonjour,

Je cherche un script de compteur pour mon site internet qui puisse tenir compte de la page dynamique affichée. vous pouvez aller sur mon site http://www.guidelabo.com vous y trouverez une carte de france je voudrais le nombre de visite par région cliquée et non pas le nombre total de fois qu'est affiché la page serv_region.php.

Mammouth du PHP | 19672 Messages

25 févr. 2006, 09:41

Je ne suis pas certain que le JavaScript va t'aider beaucoup, surtout si tu veux conserver ces chiffres pour des statistiques globales pour le site. Le PHP serait plus approprié. Si tu veux conserver ces informations dans une base de données, le PHP t'aidera davantage. Au chargement de la page serv_region.php, tu récupères le paramètre $_GET['region'] et tu incrémentes un compteur dans la base elle-même. Comme tu n'as pas des centaines de régions, tu peux avoir une table stat_region avec un champ par région qui aura pour valeur le nombre de visite.

Ensuite, pour éviter qu'un même visiteur revenant plusieurs fois sur cette page n'incrémente plusieurs fois la même région, tu peux utiliser une variable de session qui gardera en mémoire les régions visitées et te permettra de bloquer l'incrémentation d'une région déjà vue.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

pat
Eléphant du PHP | 132 Messages

25 févr. 2006, 09:56

Merci je comprend la 1ére partie partie par contre pour ce qui est des variable de cession je ne sais pas trop les utiliser il faut que je me penche la dessus

Mammouth du PHP | 19672 Messages

25 févr. 2006, 10:07

C'est pas très compliqué pour les sessions, mais tu vas devoir reprendre chaque page pour y ajouter en première ligne de code session_start(); de façon a créer une session ou prolonger une session existante. Ensuite, tu initialise une variable en créant:
<?php
session_start();
/* On crée la variable si elle n'existe pas, sinon on la laisse telle-quelle */
$_SESSION['visite_region'] = isset($_SESSION['visite_region']) ? $_SESSION['visite_region'] : array();
//... suite du code
?>
Ensuite, il te suffit de rajouter des index avec pour valeur oui ou non. Au début de ta page serv_region.php, tu fais ça:
<?php
session_start();
/* On crée la variable si elle n'existe pas, sinon on la laisse telle-quelle */
$_SESSION['visite_region'] = isset($_SESSION['visite_region']) ? $_SESSION['visite_region'] : array();
$region = isset($_GET['region']) ? $_GET['region'] : null;
/* On vérifie la présence de cette région dans la variable de session */
if(isset($region) && !in_array($region, $_SESSION['visite_region']))
{
    /* À ce stade, on sait qu'une région a été cliquée et que c'est la première fois : on l'ajoute dans la variable de session */
    $_SESSION['visite_region'][] = $region;
    /* Maintenant on peut également incrémenter le compteur en base de données */
    //... code de mise à jour en bdd
}
//... reste du code normal de la page.
?>
PS: je déménage le sujet vers le forum "Débuter en PHP"
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

pat
Eléphant du PHP | 132 Messages

25 févr. 2006, 11:01

Merci pour tous tes renseignement je vais étudier ça