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(); } 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 *************** ?>
Vous allez effectuer la troisième étape : elle consiste à importer le fichier g_disciplines.csv contenant les données relatives aux disciplines.
\n"; echo "Remarque : cette opération n'efface aucune donnée dans la base. Elle ne fait qu'une mise à jour, le cas échéant, de la liste des matières.
\n"; echo "Les champs suivants doivent être présents, dans l'ordre, et séparés par un point-virgule :
\n"; echo "Veuillez préciser le nom complet du fichier g_disciplines.csv.
\n"; echo "\n"; } else { // // Quelque chose a été posté // if ($_POST['action'] == "save_data") { check_token(false); // // On enregistre les données dans la base. // Le fichier a déjà été affiché, et l'utilisateur est sûr de vouloir enregistrer // $sql="SELECT * FROM tempo2;"; $res_temp=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($res_temp)==0) { echo "ERREUR : Aucune association élève/option n'a été trouvée ???
\n"; echo "On remplit la table 'matieres' : ";
//$go = true;
$i = 0;
// Compteur d'erreurs
$error = 0;
// Compteur d'enregistrement
$total = 0;
$nb_matieres_existantes=0;
//while ($go) {
while ($lig=mysqli_fetch_object($res_temp)) {
//$reg_nom_court = $_POST["ligne".$i."_nom_court"];
//$reg_nom_long = $_POST["ligne".$i."_nom_long"];
$reg_nom_court = $lig->col1;
$reg_nom_long = $lig->col2;
// On nettoie et on vérifie :
$reg_nom_court = remplace_accents($reg_nom_court);
$reg_nom_court = preg_replace("/[^A-Za-z0-9._\-]/","",trim(my_strtoupper($reg_nom_court)));
if (mb_strlen($reg_nom_court) > 50) $reg_nom_court = mb_substr($reg_nom_court, 0, 50);
$reg_nom_long=nettoyer_caracteres_nom($reg_nom_long, "an", " &'_-", "");
if (mb_strlen($reg_nom_long) > 200) $reg_nom_long = mb_substr($reg_nom_long, 0, 200);
// Maintenant que tout est propre, on fait un test sur la table pour voir si la matière existe déjà ou pas
$test = old_mysql_result(mysqli_query($GLOBALS["mysqli"], "SELECT count(matiere) FROM matieres WHERE matiere = '" . $reg_nom_court . "'"), 0);
if ($test == 0) {
// Test négatif : aucune matière avec ce nom court... on enregistre !
$insert = mysqli_query($GLOBALS["mysqli"], "INSERT INTO matieres SET " .
"matiere = '" . $reg_nom_court . "', " .
"nom_complet = '" . mysqli_real_escape_string($GLOBALS["mysqli"], $reg_nom_long) . "',priority='0',matiere_aid='n',matiere_atelier='n'");
//"nom_complet = '" . htmlspecialchars($reg_nom_long) . "'");
if (!$insert) {
$error++;
echo "".mysqli_error($GLOBALS["mysqli"]).' Il y a eu " . $error . " erreurs. Il y a eu " . $error . " erreur. Il y a eu " . $error . " erreurs. " . $total . " matières ont été enregistrées. " . $total . " matière a été enregistrée. " . $total . " matières ont été enregistrées. " . $nb_matieres_existantes . " matière existait déjà. " . $nb_matieres_existantes . " matières existaient déjà. Impossible d'ouvrir le fichier CSV ! Cliquer ici pour recommencer ! A titre d'information, la ligne d'entête passée est la suivante : Aucun fichier n'a été sélectionné ! Le fichier sélectionné n'est pas valide !
';
} else {
$total++;
}
}
else {
$nb_matieres_existantes++;
}
$i++;
if (!isset($_POST['ligne'.$i.'_nom_court'])) $go = false;
}
//if ($error > 0) echo "
$ligne
Si il ne s'agit pas d'une ligne d'entête, vous pouvez refaire cette étape.
\n";
echo "Cliquer ici pour recommencer !
\n";
echo "Cliquer ici pour recommencer !