0) { switch ($_FILES[core::getPost("from")]['error']) { case 1: // UPLOAD_ERR_INI_SIZE alert::recError("Le fichier dépasse la limite autorisée par le serveur (fichier php.ini) !"); break; case 2: // UPLOAD_ERR_FORM_SIZE alert::recError("Le fichier dépasse la limite autorisée dans le formulaire HTML !"); break; case 3: // UPLOAD_ERR_PARTIAL alert::recError("L'envoi du fichier a été interrompu pendant le transfert !"); break; case 4: // UPLOAD_ERR_NO_FILE alert::recError("Vous n'avez pas chargé de fichier"); break; } } elseif ($_FILES[core::getPost("from")]['type'] != "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet") { alert::recError("Seuls les fichiers Excel au format xlsx sont acceptés (".$_FILES[core::getPost("from")]['type'].")"); header("Location: /lottery-".core::getPost("lottery").".html"); exit(); } else { if (file_exists($_FILES[core::getPost("from")]['tmp_name'])) { $simpleXLSX = new simpleXLSX(); $xlsx = $simpleXLSX->parse($_FILES[core::getPost("from")]['tmp_name']); $returnXlsx = $xlsx->rows(); if( $returnXlsx[0][0] != "prest_id" OR $returnXlsx[0][1] != "doss_id" OR $returnXlsx[0][2] != "od_matricule" OR $returnXlsx[0][3] != "od_prenom" OR $returnXlsx[0][4] != "od_nom" OR $returnXlsx[0][5] != "od_email_prof" ){ echo "error"; alert::recError("Le fichier " . $_FILES[core::getPost("from")]['name'] . " n'est pas un fichier d'inscription à un tirage au sort."); header("Location: /lottery-".core::getPost("lottery").".html"); exit(); } $nbSalaries = count($returnXlsx) - 1; foreach ($returnXlsx as $key => $ligne) { if($key > 0){ $salarie = salaries::get_salarieByLoginId(strtoupper($ligne[2])); if(isset($salarie["id"])){ $tmp_id_salarie = $salarie["id"]; $tmp_id_presta = $ligne[0]; $tmp_id_dossier = $ligne[1]; $tmp_login = $salarie["loginId"]; $tmp_prenom = $salarie["prenom"]; $tmp_nom = $salarie["nom"]; $tmp_valide = $salarie["actif"]; } else { $tmp_id_salarie = NULL; $tmp_id_presta = $ligne[0]; $tmp_id_dossier = $ligne[1]; $tmp_login = $ligne[2]; $tmp_prenom = $ligne[3]; $tmp_nom = $ligne[4]; $tmp_valide = 0; } db::query("INSERT INTO " . DB_T_LOTTERY_INSCRITS . " (id_lottery, id_salarie, id_presta, id_dossier, login, prenom, nom, valide, id_user) VALUES (:id_lottery, :id_salarie, :id_presta, :id_dossier, :login, :prenom, :nom, :valide, :id_user) ON DUPLICATE KEY UPDATE id_salarie = :id_salarie, login = :login, prenom = :prenom, nom = :nom, valide = :valide"); db::bind(':id_lottery', core::getPost("lottery")); db::bind(':id_salarie', $tmp_id_salarie); db::bind(':id_presta', $tmp_id_presta); db::bind(':id_dossier', $tmp_id_dossier); db::bind(':login', $tmp_login); db::bind(':prenom', $tmp_prenom); db::bind(':nom', $tmp_nom); db::bind(':valide', $tmp_valide); db::bind(':id_user', session::getId()); try { db::execute(); if($tmp_valide == 1) { alert::recSuccess("Inscription éligible de " . $tmp_prenom . " " . $tmp_nom); } else { alert::recError("Inscription non éligible de " . $tmp_prenom . " " . $tmp_nom); } } catch (Exception $ex) { alert::recError("ERREUR TECHNIQUE : ".$tmp_prenom . " " . $tmp_nom . " n'a pas pu être importé"); } } } header("Location: /lottery-".core::getPost("lottery").".html"); exit(); } else { alert::recError("Erreur lors du chargement du fichier : " . $_FILES[core::getPost("from")]['name']); } } header("Location: /lottery-".core::getPost("lottery").".html"); exit(); } else { header('HTTP/1.0 401 Unauthorized'); exit(); }