</td>
  </tr></table>
</form>

<?php 
// Deux requêtes préliminaires pour ne pas manquer les groupes sans professeurs et les professeurs sans groupes
$tab_js = 'var tab_join = new Array();';
// [i_groupe][i_prof] => 1
$tab_groupes = array();
$tab_profs = array();
$tab_profs_par_groupe = array();
$tab_groupes_par_prof = array();
$tab_lignes_groupes = array();
$tab_lignes_profs = array();
// Récupérer la liste des groupes
$DB_TAB = DB_STRUCTURE_ADMINISTRATEUR::DB_lister_groupes_avec_niveaux();
if (empty($DB_TAB)) {
    echo '<p class="danger">Aucun groupe trouvé !</p>' . NL;
    return;
    // Ne pas exécuter la suite de ce fichier inclus.
}
foreach ($DB_TAB as $DB_ROW) {
    $tab_js .= 'tab_join[' . $DB_ROW['groupe_id'] . '] = new Array();';
    $tab_groupes[$DB_ROW['groupe_id']] = html($DB_ROW['groupe_nom']);
    $tab_profs_par_groupe[$DB_ROW['groupe_id']] = '';
    $tab_lignes_groupes[$DB_ROW['niveau_id']][] = $DB_ROW['groupe_id'];
}
// Récupérer la liste des professeurs
$DB_TAB = DB_STRUCTURE_ADMINISTRATEUR::DB_lister_users('professeur', 1, 'user_id,user_nom,user_prenom,user_profil_join_groupes', FALSE);
if (!empty($DB_TAB)) {
    $compteur = 0;