Bonjour,

je suis en train de faire des stats pour mon site et je compte le nombre de visiteurs
de cette manière

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
22
23
24
25
26
27
28
29
 
  // récupération de l'adresse IP du client 
		if(isset($_SERVER['HTTP_X_FORWARDED_FOR'])) {
		  $ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
		}
		elseif(isset($_SERVER['HTTP_CLIENT_IP'])) {
		  $ip  = $_SERVER['HTTP_CLIENT_IP'];
		}
		else {
		  $ip = $_SERVER['REMOTE_ADDR'];
		}
//******************************************************************************************
 
$sql = 'SELECT id FROM connectes_passe';
$result = mysqli_query($base_gene,$sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysqli_error());
$id = mysqli_num_rows ($result);
$id++;
 
// gestion par IP
 
		$sql='INSERT INTO connectes_passe VALUES("'.$id.'","'.$ip.'","1")';
		mysqli_query($base_gene,$sql)or die ('Erreur INSERT INTO connectes_passe'.$sql.'<br>'.mysqli_error($base_gene));
 
// gestion par session[visiteur]
		if(!isset($_SESSION['visiteur']))
		 {
			$sql = 'UPDATE connectes_passe SET session_visiteur = (session_visiteur+1) WHERE id = "1"';
			mysqli_query($base_gene,$sql)or die ('Erreur table connectes_passe'.$sql.'<br>'.mysqli_error($base_gene));
		 }
j'enregistre toutes les ip puis je sélectionne les ip uniques pour avoir le nombre de visiteurs qui ne sont venus qu'une seule fois

Ensuite je récupère le compteur "session_visiteur" pour avoir la totalité des visiteurs

Ma question : le fait de compter par "if(!isset($_SESSION['visiteur']))" est il la bonne solution ?

Merci et bonne journée