Bonjour,

Oua je galère depuis toute la journée pour trouvée où est l'erreur mais incroyable j'ai encore et toujours ce message qui s'affiche :

Warning: Division by zero in c:\easyphp1-7\www\testguillaume\graphmonth.php on line 113

Warning: Division by zero in c:\easyphp1-7\www\testguillaume\graphmonth.php on line 113

Warning: Division by zero in c:\easyphp1-7\www\testguillaume\graphmonth.php on line 113

Warning: Division by zero in c:\easyphp1-7\www\testguillaume\graphmonth.php on line 113

Warning: Division by zero in c:\easyphp1-7\www\testguillaume\graphmonth.php on line 113

Warning: Division by zero in c:\easyphp1-7\www\testguillaume\graphmonth.php on line 113

Warning: Division by zero in c:\easyphp1-7\www\testguillaume\graphmonth.php on line 113

Warning: Division by zero in c:\easyphp1-7\www\testguillaume\graphmonth.php on line 115
Voici le code je met en rouge les lignes concernées par l'erreur :

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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
for($m = 1 ; $m <= $moisCourant ; $m++)
  {
	    $moisConcerne = date("m",mktime(0,0,0,$m,1,$anneeCourante)) ;
	    $jourFinMoisConcerne = date("d",mktime(0,0,0,$m+1,0,$anneeCourante)) ;
	    $periodeDebutMois = "$anneeCourante-$moisConcerne-01" ;
	    $periodeFinMois = "$anneeCourante-$moisConcerne-$jourFinMoisConcerne" ;
	    $total=0;

	    $TableauEsites = array() ;
	    $hitsIP = array() ;

	//Cette requête renvoie le compte des hits de chaque IP sur la base de données. 
	    $queryIP=("select UserIP as ip,sum(count) as hits from LogsTableIP where Date >= '$periodeDebutMois' and Date <= '$periodeFinMois' group by ip") ;
	    $resIP=mysql_query($queryIP) or die('Erreur SQL !<br>'.$queryIP.'<br>'.mysql_error());
	    for($i=0; $hitsIP=mysql_fetch_array($resIP); $i++)
	  {
		$IP[$i]=$hitsIP["ip"];
		$ipHitsHits[$i]=$hitsIP["hits"];
		$ipHits[$i] = ip2long($IP[$i]) ;
		
	   }	

	//Cette requête renvoie le comptage total des hits des IP dans la base de données. 
	     $totalIP=("select sum(count) as total from LogsTableIP where Date >= '$periodeDebutMois' and Date <= '$periodeFinMois'") ;
	     $restotal=mysql_query($totalIP) or die('Erreur SQL !<br>'.$totalIP.'<br>'.mysql_error());
	     $totalHits=mysql_fetch_row($restotal);	

			$totalRepartition = array(0,0,0,0,0,0,0) ;

			$msgFin = "" ;

			//Distribution de pays : chaque IP est examinée et si une des IP appartient à un masque d'IP, le pays auquel appartient l’IP est incrémenté. 
			//Si l'IP n'est pas identifiée, une valeur booléenne ($reussite) est réglée et des disques d'essai de l'IP et le nombre de fois où cet IP non inscrit apparaît. 
			 
			 $unknown=0;
			 
			 for($i=0 ; $i<count($IP) ; $i++)
			{
				$reussite=0;
				
			    
				    for($j = 0 ; $j < count($countries) ; $j++)
				    {
						if($ipHits[$i] >= $ipMaskStart[$j] && $ipHits[$i] <= $ipMaskEnd[$j])
							 {
								$totalRepartition[$j] = $totalRepartition[$j]+$ipHitsHits[$i] ;
								$reussite = 1 ;
								break ;
							}
				     }  

				if($reussite == 0)
				{
					$unknown=$unknown+$ipHitsHits[$i]; //Comptage des hits des ips n'appartenant pas à un des pays du graph
				}
			}

			//S'il y a un ou plusieurs IPS non inscrits, le script doit recalculer le comptage total de l'IPS enregistré.
			  if($msgFin != "")
			  {
			    $IPDetectees = 0 ;
			    for($i = 0 ; $i < count($countries) ; $i++)
			    {
			      $IPDetectees = $IPDetectees + $totalRepartition[$i] ;
			    }
			  }
			  			  
			$values=array(0,0,0,0,0,0,0,0);

				for($i=0; $i<count($countries); $i++)
				{
					$values[$i]=round(100*($totalRepartition[$i]/$totalHits["total"]),2);
				}
					$values[7]=round(100*($unknown/$totalHits["total"]),2);

?>
J'ai biensûr fais des test pour voir si ma variable était récupérée et elle l'est je ne comprend vraiment pas...

Aidez moi svp !!