$texte_coef  = '['.$DB_ROW['item_coef'].'] ';
   $tab_comp_id[$DB_ROW['item_id']] = array($item_ref,$texte_socle.$texte_coef.$DB_ROW['item_nom']);
 }
 // résultats vierges
 foreach($tab_user_id as $user_id=>$val_user)
 {
   $tab_user_comm[$user_id] = NULL;
   foreach($tab_comp_id as $comp_id=>$val_comp)
   {
     $tab_result[$comp_id][$user_id] = '';
   }
 }
 // compléter si demandé avec les résultats et/ou les demandes d'évaluations
 if($with_result || $only_req)
 {
   $DB_TAB = DB_STRUCTURE_PROFESSEUR::DB_lister_devoir_saisies( $devoir_id , $only_req );
   foreach($DB_TAB as $DB_ROW)
   {
     // Test pour éviter les pbs des élèves changés de groupes ou des items modifiés en cours de route
     if(isset($tab_result[$DB_ROW['item_id']][$DB_ROW['eleve_id']]))
     {
       $valeur = ($with_result) ? $DB_ROW['saisie_note'] : ( ($DB_ROW['saisie_note']) ? 'REQ' : '' ) ;
       if($valeur)
       {
         $tab_result[$DB_ROW['item_id']][$DB_ROW['eleve_id']] = $valeur ;
         $tab_user_nb_req[$DB_ROW['eleve_id']]++;
       }
     }
   }
 }
 // liste des commentaires audio ou texte, si demandé avec les résultats
         $devoir_id = $DB_ROW['devoir_id'];
         $groupe_id = $DB_ROW['groupe_id'];
     }
 }
 // Si pas de devoir, il faut l'ajouter
 if (!$presence_devoir) {
     // Commencer par créer un nouveau groupe de type "eval", utilisé uniquement pour cette évaluation (c'est transparent pour le professeur) ; y associe automatiquement le prof, en responsable du groupe
     $groupe_id = DB_STRUCTURE_PROFESSEUR::DB_ajouter_groupe_par_prof('eval', '', 0);
     // Insèrer l'enregistrement de l'évaluation
     $devoir_id = DB_STRUCTURE_PROFESSEUR::DB_ajouter_devoir($_SESSION['USER_ID'], $groupe_id, TODAY_MYSQL, $description, TODAY_MYSQL, NULL, '', '', 'alpha');
 }
 // Maintenant on recupère le contenu de la base déjà enregistré pour le comparer avec la saisie envoyée.
 $presence_item = FALSE;
 $presence_eleve = FALSE;
 $presence_saisie = FALSE;
 $DB_TAB = $presence_devoir ? DB_STRUCTURE_PROFESSEUR::DB_lister_devoir_saisies($devoir_id, TRUE) : array();
 foreach ($DB_TAB as $DB_ROW) {
     if ($DB_ROW['item_id'] == $item_id) {
         $presence_item = TRUE;
     }
     if ($DB_ROW['eleve_id'] == $eleve_id) {
         $presence_eleve = TRUE;
     }
     if ($DB_ROW['item_id'] == $item_id && $DB_ROW['eleve_id'] == $eleve_id) {
         $presence_saisie = $DB_ROW['saisie_note'];
         break;
         // Pas besoin de tester davantage, on sort du foreach()
     }
 }
 // On enregistre les modifications.
 $info = $description . ' (' . afficher_identite_initiale($_SESSION['USER_NOM'], FALSE, $_SESSION['USER_PRENOM'], TRUE, $_SESSION['USER_GENRE']) . ')';
     $groupe_id = $DB_ROW['groupe_id'];
   }
 }
 // Si pas de devoir, il faut l'ajouter
 if(!$presence_devoir)
 {
   // Commencer par créer un nouveau groupe de type "eval", utilisé uniquement pour cette évaluation (c'est transparent pour le professeur) ; y associe automatiquement le prof, en responsable du groupe
   $groupe_id = DB_STRUCTURE_PROFESSEUR::DB_ajouter_groupe_par_prof( 'eval' /*groupe_type*/ , '' /*groupe_nom*/ , 0 /*niveau_id*/ );
   // Insèrer l'enregistrement de l'évaluation
   $devoir_id = DB_STRUCTURE_PROFESSEUR::DB_ajouter_devoir( $_SESSION['USER_ID'] , $groupe_id , TODAY_MYSQL , $description , TODAY_MYSQL /*date_visible_mysql*/ ,NULL /*date_autoeval_mysql*/ , '' /*doc_sujet*/ , '' /*doc_corrige*/ , 'alpha' /*eleves_ordre*/ );
 }
 // Maintenant on recupère le contenu de la base déjà enregistré pour le comparer avec la saisie envoyée.
 $presence_item   = FALSE;
 $presence_eleve  = FALSE;
 $presence_saisie = FALSE;
 $DB_TAB = ($presence_devoir) ? DB_STRUCTURE_PROFESSEUR::DB_lister_devoir_saisies( $devoir_id , TRUE /*with_REQ*/ ) : array() ;
 foreach($DB_TAB as $DB_ROW)
 {
   if($DB_ROW['item_id']==$item_id)
   {
     $presence_item = TRUE ;
   }
   if($DB_ROW['eleve_id']==$eleve_id)
   {
     $presence_eleve = TRUE ;
   }
   if( ($DB_ROW['item_id']==$item_id) && ($DB_ROW['eleve_id']==$eleve_id) )
   {
     $presence_saisie = $DB_ROW['saisie_note'] ;
     break; // Pas besoin de tester davantage, on sort du foreach()
   }