| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- <?php
- require_once "libs/fnMain.php";
- $_SETTINGS = require "libs/_settings.php";
- if (isset($_POST["csv"])) {
- // On parse le fichier CSV reçu
- $tempCsvByRow = explode("\n", $_POST["csv"]);
- array_shift($tempCsvByRow); // Enlève la 1ère ligne listant les colonnes
- $csvArray = [];
- foreach ($tempCsvByRow as $row) {
- $csvArray[] = str_getcsv($row, ";");
- }
-
- // On traite les données
- // On récupère les datasets et on inverse les clés (pour chercher plus facilement)
- $specialityDatasetAbrev = array_flip(getCsvToArrayKeyValue($_SETTINGS["datasetFolder"]."/liste_specialites_abrev.csv"));
- $cityDatasetAbrev = array_flip(getCsvToArrayKeyValue($_SETTINGS["datasetFolder"]."/liste_villes_abrev.csv"));
-
- $csvConvertedItems = [];
- foreach ($csvArray as $csvItem) {
- if ($csvItem[3] === "ESSA" || $csvItem[3] === "Invalidé") {continue;}
-
- $csvConvertedItems[] = [
- "annee" => $csvItem[0],
- "classement" => $csvItem[1],
- "idChoix" => "0".$cityDatasetAbrev[$csvItem[3]].$specialityDatasetAbrev[$csvItem[2]]
- ];
- }
-
- // var_dump($csvConvertedItems); die();
-
- // On enregistre les data dans la BDD
- $sql = "INSERT INTO anciens_choix(annee, classement, idchoix) VALUES (:annee, :classement, :idChoix);";
- $reqInsertRangLimites = $db->prepare($sql);
-
- foreach ($csvConvertedItems as $item) {
- /* var_dump([
- "annee" => (int) $item["annee"],
- "classement" => (int) $item["classement"],
- "idChoix" => $item["idChoix"]
- ]); die(); */
- $reqInsertRangLimites->execute([
- "annee" => (int) $item["annee"],
- "classement" => (int) $item["classement"],
- "idChoix" => $item["idChoix"]
- ]);
- }
-
- echo "Valeurs enregistrées";
-
- } else {
- // Affichage du formulaire d'import
- ?>
- <!doctype html>
- <html lang="fr">
- <head>
- <meta charset="UTF-8">
- <meta name="viewport"
- content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
- <meta http-equiv="X-UA-Compatible" content="ie=edge">
- <title>IMPORT CHOIX et RANGS</title>
- <link rel="stylesheet" href="assets/bootstrap.min.css">
- <link rel="stylesheet" href="assets/divers.css">
- </head>
- <body>
- <h1>RangLimier - Import des choix, année et rangs associés</h1>
- <p>Importation des données en CSV en DB.</p>
- <form action="_importDataChoix.php" method="post">
- <label for="csv">Ajouter le CSV ici (sous la forme "Annee,Rang,Spe,CHU") avec la ligne titre </label> <br>
- <textarea name="csv"></textarea> <br>
-
- <button type="submit" class="btn btn-info">Envoyer</button>
- </form>
- </body>
- </html>
- <?php }
|