security_check(); if ($resultat_session == 'c') { header("Location: ../utilisateurs/mon_compte.php?change_mdp=yes"); die(); } else if ($resultat_session == '0') { header("Location: ../logout.php?auto=1"); die(); } include("../lib/initialisation_annee.inc.php"); $liste_tables_del = $liste_tables_del_etape_matieres; if (!checkAccess()) { header("Location: ../logout.php?auto=1"); die(); } //**************** EN-TETE ***************** $titre_page = "Outil d'initialisation de l'année : Importation des matières"; require_once("../lib/header.inc.php"); //**************** FIN EN-TETE ***************** ?>

Retour Retour accueil initialisation

Troisième phase d'initialisation
Importation des matières

"; if (!isset($step1)) { $j=0; $flag=0; while (($j < count($liste_tables_del)) and ($flag==0)) { if (old_mysql_result(mysqli_query($GLOBALS["mysqli"], "SELECT count(*) FROM $liste_tables_del[$j]"),0)!=0) { $flag=1; } $j++; } if ($flag != 0){ echo "

ATTENTION ...
"; echo "Des données concernant les matières sont actuellement présentes dans la base GEPI

"; echo "

Si vous poursuivez la procédure les données telles que notes, appréciations, ... seront effacées.

"; echo "

Seules la table contenant les matières et la table mettant en relation les matières et les professeurs seront conservées.

"; echo "
"; echo add_token_field(); echo ""; echo ""; echo "
"; echo ""; require("../lib/footer.inc.php"); die(); } } if (!isset($is_posted)) { if(isset($step1)) { $j=0; while ($j < count($liste_tables_del)) { if (old_mysql_result(mysqli_query($GLOBALS["mysqli"], "SELECT count(*) FROM $liste_tables_del[$j]"),0)!=0) { $del = @mysqli_query($GLOBALS["mysqli"], "DELETE FROM $liste_tables_del[$j]"); } $j++; } } echo "

ATTENTION ...
Vous ne devez procéder à cette opération uniquement si la constitution des classes a été effectuée !

"; echo "

Importation du fichier F_tmt.csv contenant les données relatives aux matières : veuillez préciser le nom complet du fichier F_tmt.csv."; echo "

"; echo add_token_field(); echo ""; echo ""; echo "

"; echo "

"; echo "

"; } else { check_token(false); $dbf_file = isset($_FILES["dbf_file"]) ? $_FILES["dbf_file"] : NULL; if(mb_strtoupper($dbf_file['name']) == "F_TMT.CSV") { $fp = fopen($dbf_file['tmp_name'],"r"); if(!$fp) { echo "

Impossible d'ouvrir le fichier dbf

"; echo "

Cliquer ici pour recommencer !

"; } else { // on constitue le tableau des champs à extraire $tabchamps = array("MATIMN","MATILC"); $nblignes=0; while (!feof($fp)) { $ligne = fgets($fp, 4096); if($nblignes==0){ // Quand on enregistre en CSV des fichiers DBF de GEP avec OpenOffice, les champs sont renommés avec l'ajout de ',...' en fin de nom de champ. // On ne retient pas ces ajouts pour $en_tete $temp=explode(";",$ligne); for($i=0;$iDans le tableau ci-dessous, les identifiants en rouge correspondent à des nouvelles matières dans la base GEPI. les identifiants en vert correspondent à des identifiants de matières détectés dans le fichier GEP mais déjà présents dans la base GEPI.

Il est possible que certaines matières ci-dessous, bien que figurant dans le fichier CSV, ne soient pas utilisées dans votre établissement cette année. C'est pourquoi il vous sera proposé en fin de procédure d'initialsation, un nettoyage de la base afin de supprimer ces données inutiles.

"; echo ""; echo ""; $alt=1; //========================= $fp=fopen($dbf_file['tmp_name'],"r"); // On lit une ligne pour passer la ligne d'entête: $ligne = fgets($fp, 4096); //========================= $nb_reg_no = 0; for($k = 1; ($k < $nblignes+1); $k++){ if(!feof($fp)){ $ligne = preg_replace('/"/','',fgets($fp, 4096)); if(trim($ligne)!=""){ //echo ""; $alt=$alt*(-1); $verif = mysqli_query($GLOBALS["mysqli"], "select matiere, nom_complet from matieres where matiere='$affiche[0]'"); $resverif = mysqli_num_rows($verif); if($resverif == 0) { $req = mysqli_query($GLOBALS["mysqli"], "insert into matieres set matiere='".mysqli_real_escape_string($GLOBALS["mysqli"], nettoyer_caracteres_nom(remplace_accents($affiche[0],''),"an","_-",""))."', nom_complet='".mysqli_real_escape_string($GLOBALS["mysqli"], $affiche[1])."', priority='0',matiere_aid='n',matiere_atelier='n'"); if(!$req) { $nb_reg_no++; echo mysqli_error($GLOBALS["mysqli"]); } else { echo ""; } } else { $nom_complet = old_mysql_result($verif,0,'nom_complet'); echo ""; } } } } echo "

Identifiant de la matière

Nom complet

"; $tabligne=explode(";",$ligne); for($i = 0; $i < count($tabchamps); $i++) { $affiche[$i] = nettoyer_caracteres_nom($tabligne[$tabindice[$i]], "an", "&_.' -", ""); //echo "\$tabligne[".$tabindice[$i]."]=".$tabligne[$tabindice[$i]]."
"; //echo "\$affiche[$i]=$affiche[$i]
"; } //echo "

$affiche[0]

".htmlentities($affiche[1])."

$affiche[0]

".htmlentities($nom_complet)."

"; fclose($fp); if ($nb_reg_no != 0) { echo "

Lors de l'enregistrement des données il y a eu $nb_reg_no erreurs. Essayez de trouvez la cause de l'erreur et recommencez la procédure avant de passer à l'étape suivante."; } else { echo "

L'importation des matières dans la base GEPI a été effectuée avec succès !
Vous pouvez procéder à la quatrième phase d'importation des professeurs.

"; } echo "

Importation des professeurs

"; } } else if (trim($dbf_file['name'])=='') { echo "

Aucun fichier n'a été sélectionné !
"; echo "Cliquer ici pour recommencer !

"; } else { echo "

Le fichier sélectionné n'est pas valide !
"; echo "Cliquer ici pour recommencer !

"; } } echo "


"; require("../lib/footer.inc.php"); ?>