I have a request that search the "Accommodations" and "Catering" services present on contracts. This query makes a sum per year. Everything works well ! The retrieved data is stored in an Array which is then sent to Javascript which can calculate and display a dynamic graph... The problem is that some years don't have "Restores", so the While Loop can't add information to the Array that doesn't exist, so the graph doesn't work, the data's colums shifts !
while ($data = $requete1->fetch()) {
// Hébergement :
if($data['P_TYPE']=="HEBERGEMENT"){
$hebergement[] = array("label"=> $data['ANNEE'], "y"=> $data['ca_total']);
}
// Restauration :
if($data['P_TYPE']=="RESTAURATION"){
$restauration[] = array("label"=> $data['ANNEE'], "y"=> $data['ca_total']);
}
}
I would need a result like this, With 0 values added when the services do not exist :
// Hébergement années non comprises en bdd :
$hebergement[] = array("label"=> "2021", "y"=> 68279);
$hebergement[] = array("label"=> "2020", "y"=> 30457);
$hebergement[] = array("label"=> "2019", "y"=> 0);
$hebergement[] = array("label"=> "2018", "y"=> 57993);
$hebergement[] = array("label"=> "2017", "y"=> 49702);
$hebergement[] = array("label"=> "2016", "y"=> 45493);
$hebergement[] = array("label"=> "2015", "y"=> 38460);
// Restauration années non comprises en bdd :
$restauration[] = array("label"=> "2021", "y"=> 12117);
$restauration[] = array("label"=> "2020", "y"=> 697);
$restauration[] = array("label"=> "2019", "y"=> 2687);
$restauration[] = array("label"=> "2018", "y"=> 0);
$restauration[] = array("label"=> "2017", "y"=> 40);
$restauration[] = array("label"=> "2016", "y"=> 350);
$restauration[] = array("label"=> "2015", "y"=> 200);*/
Thank you in advance for your help !
Today I try this,like ADyson said, but it doesn't work too :
while ($data = $requete3->fetch()) {
// Hébergement :
if ($data['P_TYPE']=="HEBERGEMENT"){
if(isset($annee) AND ($annee-$data['ANNEE']>=1)){
$restauration[] = array("label"=> $data['ANNEE'], "y"=> 0);
$annee='';
}
else{
$hebergement[] = array("label"=> $data['ANNEE'], "y"=> $data['ca_total']);
$annee=$data['ANNEE'];
}
}
// Hébergement :
if ($data['P_TYPE']=="RESTAURATION"){
if(isset($annee) AND ($annee-$data['ANNEE']>=1)){
$hebergement[] = array("label"=> $data['ANNEE'], "y"=> 0);
$annee='';
}
else{
$restauration[] = array("label"=> $data['ANNEE'], "y"=> $data['ca_total']);
$annee=$data['ANNEE'];
}
}
}