{
      $tab_bad[] = 'U'.$DB_ROW['user_id'].'C'.$DB_ROW['pilier_id'].'" class="v3">';
      $tab_bon[] = 'U'.$DB_ROW['user_id'].'C'.$DB_ROW['pilier_id'].'" class="v'.$DB_ROW['validation_pilier_etat'].'" title="Validé le '.convert_date_mysql_to_french($DB_ROW['validation_pilier_date']).' par '.html($DB_ROW['validation_pilier_info']).'" data-etat="lock">';
    }
  }
  $affichage = str_replace($tab_bad,$tab_bon,$affichage);
  // Afficher le résultat
  echo $affichage;
}

// ////////////////////////////////////////////////////////////////////////////////////////////////////
// Supprimer une validation positive
// ////////////////////////////////////////////////////////////////////////////////////////////////////

elseif( ($action=='Enregistrer_validation') && ($delete_id) )
{
  // Récupérer le duo {eleve;pilier}
  $string_infos = str_replace( array('U','C') , '_' , $delete_id);
  list($rien,$eleve_id,$pilier_id) = explode('_',$string_infos);
  // Mettre à jour la base
  DB_STRUCTURE_SOCLE::DB_supprimer_validation('pilier',$eleve_id,$pilier_id);
  exit('OK');
}

// ////////////////////////////////////////////////////////////////////////////////////////////////////
// On ne devrait pas en arriver là...
// ////////////////////////////////////////////////////////////////////////////////////////////////////

exit('Erreur avec les données transmises !');
?>
        unset($tab_post[$key]);
    }
    // Il reste dans $tab_post les validations à ajouter (mises dans $tab_nouveau_ajouter) et les validations à ignorer (non effectuées par le formulaire)
    // On remplit $tab_nouveau_ajouter
    // Validation absente dans la base mais effectuée par le formulaire
    $tab_nouveau_ajouter = array_filter($tab_post, 'is_renseigne');
    // Sinon, validation absente dans la base et absente du formulaire : RAS
    // Il n'y a plus qu'à mettre à jour la base
    if (!count($tab_nouveau_ajouter) && !count($tab_nouveau_modifier) && !count($tab_nouveau_supprimer)) {
        exit('Aucune modification détectée !');
    }
    // L'information associée à la validation comporte le nom du validateur (c'est une information statique, conservée sur plusieurs années)
    $info = afficher_identite_initiale($_SESSION['USER_NOM'], FALSE, $_SESSION['USER_PRENOM'], TRUE, $_SESSION['USER_GENRE']);
    foreach ($tab_nouveau_ajouter as $key => $etat) {
        list($entree_id, $eleve_id) = explode('x', $key);
        DB_STRUCTURE_SOCLE::DB_ajouter_validation('entree', $eleve_id, $entree_id, $etat, TODAY_MYSQL, $info);
    }
    foreach ($tab_nouveau_modifier as $key => $etat) {
        list($entree_id, $eleve_id) = explode('x', $key);
        DB_STRUCTURE_SOCLE::DB_modifier_validation('entree', $eleve_id, $entree_id, $etat, TODAY_MYSQL, $info);
    }
    foreach ($tab_nouveau_supprimer as $key) {
        list($entree_id, $eleve_id) = explode('x', $key);
        DB_STRUCTURE_SOCLE::DB_supprimer_validation('entree', $eleve_id, $entree_id);
    }
    exit('OK');
}
// ////////////////////////////////////////////////////////////////////////////////////////////////////
// On ne devrait pas en arriver là...
// ////////////////////////////////////////////////////////////////////////////////////////////////////
exit('Erreur avec les données transmises !');