<?php // constantes numériques require ("constantes.php"); // fonctions d'affichage de portions de pages HTML require ("acces_page.php"); // génération du menu en colonne de gauche require ("genmenu.php"); // récupérer la classe d'âge sélectionnée $cl_age = $_GET ['cl_age']; // modèle de page html (dépend si classe d'âge déjà sélectionnée ou non) if ($cl_age) $ficpage = DIR_PAGES."/table-evol-age.html"; else $ficpage = DIR_PAGES."/table-evol-select-age.html"; // ouvrir le fichier contenant la page à afficher $descfic = fopen ($ficpage, "r"); // si l'ouverture s'est bien passée if ($descfic) { // recopier le début de l'entête html en remplaçant noindex par index copmaj ($descfic, "noindex,", "index,"); // recopier le début du fichier html jusqu'au formulaire de sélection de classe d'âge copie_jusque_option ($descfic); // liste des classes d'âge $liste_cl_age = array (4, 9, 11, 17, 24, 29, 39, 49, 59, 64, 69, 74, 79, 80); // initialisations $agemin = 0; $indice = 0; // génération de la liste des classes d'âge do { // récupérer une classe d'âge $agemax = $liste_cl_age [$indice]; // générer l'option echo " <option "; // si classe d'âge précédemment choisie if ($cl_age == $agemax) // la sélectionner echo "selected "; // valeur de la classe d'âge echo 'value = "'.$agemax.'">'; // générer le texte associé if ($agemin) { if ($agemax < 80) echo "De ".$agemin." à "; else echo "À partir de "; } else echo "Jusqu'à "; // fin de la balise <option> echo $agemax." ans</option>\n"; // âge minimal pour la classe d'âge suivante $agemin = $agemax + 1; // avancer dans la liste $indice ++; } while ($agemax < 80); // si une classe d'âge a été sélectionnée if ($cl_age) { // recopier le début du fichier html jusqu'à la zone contenu copie_jusque_chaine ($descfic, "contenu", 1); // construire le nom du fichier csv if ($cl_age < 10) $cl_age = "0".$cl_age; $ficcsv = DIR_CSV."/vacsi-age-".$cl_age.".csv"; // l'ouvrir en lecture $descscv = fopen ($ficcsv, "r"); // si l'ouverture s'est bien passée if ($descscv) { // recopier le fichier html jusqu'au contenu de la table copie_jusque_chaine ($descfic, "XXXTABLE"); // lire une ligne du fichier csv $ligne = trim (fgets ($descscv, LG_MAX_CSV)); // tantque non fin de fichier while ($ligne) { // séparer les nombres de vaccination des taux $pos_point = strpos ($ligne, "."); $deblig = substr ($ligne, 0, $pos_point); $finlig = substr ($ligne, $pos_point); // franciser les . décimaux $finlig = str_replace (".", ",", $finlig); // rajouter les pourcentages $finlig = str_replace (";", " %;", $finlig)." %"; // mettre la ligne lue au format html $ligne = str_replace (";", "</td><td>", $deblig.$finlig); // générer la ligne dans la table echo " <tr align=\"center\">\n"; echo " <td>".$ligne."</td>\n"; echo " </tr>\n"; // passer à la ligne suivante du fichier csv $ligne = trim (fgets ($descscv, LG_MAX_CSV)); } // terminé avec ce fichier fclose ($descscv); } // sinon else { // message d'erreur echo ' <font color = "#FF0000">'; echo "Fichier contenant les données inaccessible</font>\n"; // sauter la table sauter_jusque_chaine ($descfic, "</table>"); } } // copie la suite du fichier html jusqu'à la section du menu copie_jusque_chaine ($descfic, "XXXMENU"); // générer le menu genmenu (basename ($_SERVER ['SCRIPT_NAME'])); // copier la fin de la page html copie_jusque_fin ($descfic); // terminé avec le fichier html fclose ($descfic); } // sinon message d'erreur else echo "Page ".basename ($ficpage)." manquante"; ?>