}
 // Vérifier que l'identifiant sconet est disponible (parmi les utilisateurs de même type de profil)
 if ($sconet_id) {
     if (DB_STRUCTURE_ADMINISTRATEUR::DB_tester_utilisateur_identifiant('sconet_id', $sconet_id, $id, $_SESSION['TAB_PROFILS_ADMIN']['TYPE'][$profil])) {
         exit('Erreur : identifiant Sconet déjà utilisé !');
     }
 }
 // Vérifier que la référence est disponible (parmi les utilisateurs de même type de profil)
 if ($reference) {
     if (DB_STRUCTURE_ADMINISTRATEUR::DB_tester_utilisateur_identifiant('reference', $reference, $id, $_SESSION['TAB_PROFILS_ADMIN']['TYPE'][$profil])) {
         exit('Erreur : référence déjà utilisée !');
     }
 }
 // Vérifier que le login transmis est disponible (parmi tous les utilisateurs de l'établissement)
 if (!$box_login) {
     if (DB_STRUCTURE_ADMINISTRATEUR::DB_tester_utilisateur_identifiant('login', $login, $id)) {
         exit('Erreur : login déjà existant !');
     }
     $tab_donnees[':login'] = $login;
 }
 // Vérifier le domaine du serveur mail seulement en mode multi-structures car ce peut être sinon une installation sur un serveur local non ouvert sur l'extérieur.
 if ($courriel) {
     if (HEBERGEUR_INSTALLATION == 'multi-structures') {
         list($mail_domaine, $is_domaine_valide) = tester_domaine_courriel_valide($courriel);
         if (!$is_domaine_valide) {
             exit('Erreur avec le domaine "' . $mail_domaine . '" !');
         }
     }
     $tab_donnees[':email_origine'] = 'admin';
 } else {
     $tab_donnees[':email_origine'] = '';
 // La classe n'est affichée que pour l'élève
 $avec_info = $profil == 'eleves' ? 'classe' : ($profil == 'parents' ? 'enfant' : '');
 // ////////////////////////////////////////////////////////////////////////////////////////////////////
 // Initialiser plusieurs noms d'utilisateurs
 // ////////////////////////////////////////////////////////////////////////////////////////////////////
 if ($action == 'generer_login') {
     $tab_login = array();
     // Récupérer les données des utilisateurs concernés (besoin de le faire maintenant, on a besoin des infos pour générer le login)
     $listing_champs = $profil != 'parents' ? 'user_id,user_sconet_id,user_sconet_elenoet,user_reference,user_profil_sigle,user_nom,user_prenom' : 'parent.user_id AS parent_id,parent.user_sconet_id AS parent_sconet_id,parent.user_sconet_elenoet AS parent_sconet_elenoet,parent.user_reference AS parent_reference,parent.user_profil_sigle AS parent_profil_sigle,parent.user_nom AS parent_nom,parent.user_prenom AS parent_prenom';
     $DB_TAB = DB_STRUCTURE_ADMINISTRATEUR::DB_lister_users_cibles(implode(',', $tab_user), $listing_champs, $avec_info);
     // Mettre à jour les noms d'utilisateurs des utilisateurs concernés
     foreach ($DB_TAB as $DB_ROW) {
         // Construire le login
         $login = fabriquer_login($DB_ROW[$prefixe . 'prenom'], $DB_ROW[$prefixe . 'nom'], $DB_ROW[$prefixe . 'profil_sigle']);
         // Puis tester le login
         if (DB_STRUCTURE_ADMINISTRATEUR::DB_tester_utilisateur_identifiant('login', $login, $DB_ROW[$prefixe . 'id'])) {
             // Login pris : en chercher un autre en remplaçant la fin par des chiffres si besoin
             $login = DB_STRUCTURE_ADMINISTRATEUR::DB_rechercher_login_disponible($login);
         }
         DB_STRUCTURE_ADMINISTRATEUR::DB_modifier_user($DB_ROW[$prefixe . 'id'], array(':login' => $login));
         $tab_login[$DB_ROW[$prefixe . 'id']] = $login;
     }
 }
 // ////////////////////////////////////////////////////////////////////////////////////////////////////
 // Initialiser plusieurs mots de passe
 // ////////////////////////////////////////////////////////////////////////////////////////////////////
 if ($action == 'generer_mdp') {
     $tab_password = array();
     // Récupérer les données des utilisateurs concernés (besoin de le faire maintenant, on a besoin des infos pour générer le mdp)
     $listing_champs = $profil != 'parents' ? 'user_id,user_sconet_id,user_sconet_elenoet,user_reference,user_profil_sigle,user_nom,user_prenom,user_login' : 'parent.user_id AS parent_id,parent.user_sconet_id AS parent_sconet_id,parent.user_sconet_elenoet AS parent_sconet_elenoet,parent.user_reference AS parent_reference,parent.user_profil_sigle AS parent_profil_sigle,parent.user_nom AS parent_nom,parent.user_prenom AS parent_prenom,parent.user_login AS parent_login';
     $DB_TAB = DB_STRUCTURE_ADMINISTRATEUR::DB_lister_users_cibles(implode(',', $tab_user), $listing_champs, $avec_info);