Subversion Repositories Sites.obs-saisons.fr

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
1 aurelien 1
<?
2
//Définition des points :
3
//Nb de semaines qui séparent les couleurs
4
$pasSemaines = 2;
5
 
6
include ("modules/connect.php");
7
 
8
//on regarde si une année a été postée ou pas
9
if ($anneeChoisie) {
10
  //si oui, on la prend en compte
11
  $annee = $_SESSION['observation']['annee'];
12
} else {
13
  //si non, on regarde l'année en cours
14
  $annee = date('Y');
15
}
16
 
17
  $evenement_id = $_SESSION['observation']['evenement_id'];
18
  $espece_id=$_SESSION['observation']['espece_id'];
19
 
20
//echo "ev $evenement_id, espece $espece_id, année $annee";
21
 
22
$req_dates = mysql_query("SELECT DATE_FORMAT(MESURE_DATE,'%d%m%Y'), STATION_ID FROM MESURE,SEQUENCE".
23
	" where SEQUENCE.SEQUENCE_ID=MESURE.SEQUENCE_ID and".
24
	" EVENEMENT_ID=$evenement_id and ESPECE_ID=$espece_id".
25
	" AND MESURE_DATE!='0000-00-00' and MESURE_DATE>='$annee-01-01'".
26
	" and MESURE_DATE<'".($annee+1)."-01-01'".
27
	" order by STATION_ID");
28
$dates = array();
29
$lastcommune = 0;
30
$nbdates = 1;
31
echo mysql_error();
32
while ($obs = mysql_fetch_row($req_dates)) {
33
  $jour_crt = substr($obs[0],0,2);
34
  $mois_crt = substr($obs[0],2,2);
35
  $annee_crt = substr($obs[0],4,4);
36
  if ($obs[1]!=$lastcommune) {
37
    //on calcule la moyenne pour la commune précédente :
38
    if ($lastcommune != 0)
39
      $dates[$lastcommune] = $dates[$lastcommune]/$nbdates;
40
    //on initialise les variables pour la nouvelle commune
41
    $nbdates = 1;
42
    $lastcommune=$obs[1];
43
    $dates[$lastcommune] = mktime(0,0,0,$mois_crt,$jour_crt,$annee_crt);
44
  } else {
45
    $nbdates++;
46
    $dates[$lastcommune] += mktime(0,0,0,$mois_crt,$jour_crt,$annee_crt);
47
  }
48
}
49
if (mysql_num_rows($req_dates)>0)
50
  $dates[$lastcommune] = $dates[$lastcommune]/$nbdates;
51
 
52
if (sizeof($dates)>0) {
53
  $dateMin = min ($dates);
54
  $dateMax = max ($dates);
55
  $nbDates = sizeof ($dates);
56
 
57
  foreach ($dates as $comm => $date) {
58
    //la date courante est égale à la date min + combien de semaines ?
59
    $nbSemaines = round(($dates[$comm] - $dateMin)/604800);
60
    if ($nbSemaines < $nbPuces)
61
      $puces[$comm] = $nbSemaines;
62
    else
63
      $puces[$comm] = $nbPuces;
64
  }
65
}
66
else {
67
  $erreurs[] = "Désolé, il n'y a pas encore eu d'observations cette année pour l'évènement sélectionné ci-dessus. Choisissez un autre évènement.";
68
}
69
?>