Code source du fichier table-evol-dom.php

<?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 le DOM sélectionné
    $dom = $_GET ['dom'];

    // modèle de page html (dépend si DOM déjà sélectionné ou non)
    if ($dom)
        $ficpage = DIR_PAGES."/table-evol-dom.html";
    else
        $ficpage = DIR_PAGES."/table-evol-select-dom.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 DOM
        copie_jusque_option ($descfic);

        // liste des codes de départements d'outre-mer
        $liste_codedom = array ("gua", "guy", "mar", "may", "reu", "sba", "sma");

        // liste des noms de départements d'outre-mer
        $liste_nomdom = array ("Guadeloupe", "Guyane", "Martinique", "Mayotte",
                               "Réunion", "St-Barthélemy", "St-Martin");

        // génération de la liste des départements d'outre-mer
        for ($indice = 0; $indice < count ($liste_codedom); $indice++)
        {
            // récupérer un code du DOM
            $codedom = $liste_codedom [$indice];

            // générer l'option
            echo "              <option ";

            // si DOM précédemment choisi
            if ($dom == $codedom)
                // le sélectionner
                echo "selected ";

            // fin de la balise <option>
            echo 'value = "'.$codedom.'">'.$liste_nomdom [$indice]."</option>\n";
        }

        // si un département d'outre-mer a été sélectionné
        if ($dom)
        {
            // recopier le début du fichier html jusqu'à la zone contenu
            copie_jusque_chaine ($descfic, "contenu", 1);

            // construire le nom du fichier csv
            $ficcsv = DIR_CSV."/vacsi-dom-".$dom.".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";
?>