$tab_i_fichier_TO_id_base = $tab_liens_id_base['users']; // On récupère le fichier avec les utilisateurs : $tab_users_fichier['champ'] : i -> valeur, avec comme champs : sconet_id / sconet_num / reference / profil_sigle / nom / prenom / classe / groupes / matieres / adresse / enfant $fnom = CHEMIN_DOSSIER_IMPORT.'import_'.$import_origine.'_'.$import_profil.'_'.$_SESSION['BASE'].'_'.session_id().'_users.txt'; if(!is_file($fnom)) { exit('Erreur : le fichier contenant les utilisateurs est introuvable !'); } $contenu = file_get_contents($fnom); $tab_users_fichier = @unserialize($contenu); if($tab_users_fichier===FALSE) { exit('Erreur : le fichier contenant les utilisateurs est syntaxiquement incorrect !'); } // On récupère le contenu de la base pour comparer : $tab_base_adresse[user_id]=array() $tab_base_adresse = array(); $DB_TAB = DB_STRUCTURE_ADMINISTRATEUR::DB_lister_adresses_parents(); foreach($DB_TAB as $DB_ROW) { $tab_base_adresse[$DB_ROW['parent_id']] = array( $DB_ROW['adresse_ligne1'] , $DB_ROW['adresse_ligne2'] , $DB_ROW['adresse_ligne3'] , $DB_ROW['adresse_ligne4'] , (int)$DB_ROW['adresse_postal_code'] , $DB_ROW['adresse_postal_libelle'] , $DB_ROW['adresse_pays_nom'] ); } // Pour préparer l'affichage $lignes_ajouter = ''; $lignes_modifier = ''; $lignes_conserver = ''; // Pour préparer l'enregistrement des données $tab_users_ajouter = array(); $tab_users_modifier = array(); // Parcourir chaque entrée du fichier foreach($tab_i_fichier_TO_id_base as $i_fichier => $id_base) { // Cas [1] : parent présent dans le fichier, adresse absente de la base : il vient d'être ajouté, on ajoute aussi son adresse, sauf si elle est vide (on ne teste pas le pays qui vaut FRANCE par défaut dans l'export Sconet).