function enregistreCoursCsv2($jour, $creneau, $classe, $matiere, $prof, $salle, $groupe, $regroupement, $effectif, $modalite, $frequence, $aire) { $retour["msg_erreur"] = ''; // Les étapes vont de 0 à 11 en suivant l'ordre des variables ci-dessus // Si un cours est enregistré, on renvoie 'oui', sinon on renvoie 'non' // le jour => il est bon, il faut juste l'écrire en minuscule $jour_e = my_strtolower($jour); // Cette fonction renvoie l'id du créneau de départ, la durée et le moment du début du cours $test_creneau = rechercheCreneauCsv2($creneau); $creneau_e = $test_creneau["id_creneau"]; $duree_e = $test_creneau["duree"]; $heuredeb_dec = $test_creneau["debut"]; // On récupère les concordances $classe_e = renvoiConcordances($classe, 2); $matiere_e = renvoiConcordances($matiere, 3); $prof_e = renvoiConcordances($prof, 4); $salle_e = renvoiIdSalle($salle); // on peut se le permettre puisque le travail sur les salles a déjà été effectué $type_semaine = renvoiConcordances($frequence, 10); if ($type_semaine == '' or $type_semaine == 'erreur') { $type_semaine = '0'; } // Il reste à déterminer le groupe if ($regroupement != '') { //echo "\$regroupement=$regroupement<br />"; $test = explode("|", $regroupement); if ($test[0] == 'EDT') { $groupe_e = $regroupement; } else { $groupe_e = renvoiConcordances($regroupement, 7); //echo "\$groupe_e=$groupe_e<br />"; if ($groupe_e == 'erreur') { $regrp = ''; $groupe_e = renvoiIdGroupe($prof_e, $classe_e, $matiere_e, $regrp, $groupe, 'csv2'); } } } else { // On recherche le groupe $regrp = ''; $groupe_e = renvoiIdGroupe($prof_e, $classe_e, $matiere_e, $regrp, $groupe, 'csv2'); //echo "\$groupe_e = renvoiIdGroupe($prof_e, $classe_e, $matiere_e, $regrp, $groupe, 'csv2');=$groupe_e<br />"; } // On vérifie si tous les champs importants sont précisés ou non if ($jour_e == '' or $creneau_e == 'erreur' or $groupe_e == 'aucun' or $groupe_e == 'plusieurs' or $groupe_e == 'erreur' or $matiere_e == 'inc' or $classe_e == 'inc' or $prof_e == 'inc' or $prof_e == 'erreur' or $prof_e == 'aucun') { // Il manque des informations $retour["reponse"] = 'non'; $retour["msg_erreur"] .= $jour_e . '|' . $creneau_e . '|' . $groupe_e . '|' . $matiere_e . '|' . $classe_e . '|' . $prof_e; //echo "Il manque des infos.<br />"; } else { // On vérifie que cette ligne n'existe pas déjà // On ne tient pas compte du type de semaine car on estime que si un enseignement a lieu sur deux types de semaines, c'est qu'il a lieu toutes les semaines if (preg_match("/^AID/", $groupe_e)) { $tmp_tab = explode('|', $groupe_e); $id_aid_courant = $tmp_tab[1]; $sql = "SELECT id_cours FROM edt_cours WHERE\r\n\t\t\t\t\t\t\tid_aid = '" . $id_aid_courant . "' AND\r\n\t\t\t\t\t\t\tid_salle = '" . $salle_e . "' AND\r\n\t\t\t\t\t\t\tjour_semaine = '" . $jour_e . "' AND\r\n\t\t\t\t\t\t\tid_definie_periode = '" . $creneau_e . "' AND\r\n\t\t\t\t\t\t\tduree = '" . $duree_e . "' AND\r\n\t\t\t\t\t\t\theuredeb_dec = '" . $heuredeb_dec . "' AND\r\n\t\t\t\t\t\t\tid_calendrier = '0' AND\r\n\t\t\t\t\t\t\tmodif_edt = '0' AND\r\n\t\t\t\t\t\t\tlogin_prof = '" . $prof_e . "';"; } else { $sql = "SELECT id_cours FROM edt_cours WHERE\r\n\t\t\t\t\t\t\tid_groupe = '" . $groupe_e . "' AND\r\n\t\t\t\t\t\t\tid_salle = '" . $salle_e . "' AND\r\n\t\t\t\t\t\t\tjour_semaine = '" . $jour_e . "' AND\r\n\t\t\t\t\t\t\tid_definie_periode = '" . $creneau_e . "' AND\r\n\t\t\t\t\t\t\tduree = '" . $duree_e . "' AND\r\n\t\t\t\t\t\t\theuredeb_dec = '" . $heuredeb_dec . "' AND\r\n\t\t\t\t\t\t\tid_calendrier = '0' AND\r\n\t\t\t\t\t\t\tmodif_edt = '0' AND\r\n\t\t\t\t\t\t\tlogin_prof = '" . $prof_e . "';"; } //echo "Test ifexists : $sql<br />"; $ifexists = mysqli_query($GLOBALS["mysqli"], $sql) or die('erreur dans la requête ' . $ifexists . ' : ' . mysqli_error($GLOBALS["mysqli"])); $erreur_report = mysqli_fetch_array($ifexists); $retour["msg_erreur"] .= 'Ce cours existe déjà (' . $erreur_report["id_cours"] . ').'; if (mysqli_num_rows($ifexists) < 1) { // On enregistre la ligne //echo "\$groupe_e=$groupe_e<br />"; if (preg_match("/^AID/", $groupe_e)) { $tmp_tab = explode('|', $groupe_e); $id_aid_courant = $tmp_tab[1]; $sql = "INSERT INTO `edt_cours` (`id_cours`,\r\n\t\t\t\t\t\t\t\t\t\t`id_aid`,\r\n\t\t\t\t\t\t\t\t\t\t`id_salle`,\r\n\t\t\t\t\t\t\t\t\t\t`jour_semaine`,\r\n\t\t\t\t\t\t\t\t\t\t`id_definie_periode`,\r\n\t\t\t\t\t\t\t\t\t\t`duree`,\r\n\t\t\t\t\t\t\t\t\t\t`heuredeb_dec`,\r\n\t\t\t\t\t\t\t\t\t\t`id_semaine`,\r\n\t\t\t\t\t\t\t\t\t\t`id_calendrier`,\r\n\t\t\t\t\t\t\t\t\t\t`modif_edt`,\r\n\t\t\t\t\t\t\t\t\t\t`login_prof`)\r\n\t\t\t\t\t\t\t\tVALUES ('',\r\n\t\t\t\t\t\t\t\t\t\t'" . $id_aid_courant . "',\r\n\t\t\t\t\t\t\t\t\t\t'" . $salle_e . "',\r\n\t\t\t\t\t\t\t\t\t\t'" . $jour_e . "',\r\n\t\t\t\t\t\t\t\t\t\t'" . $creneau_e . "',\r\n\t\t\t\t\t\t\t\t\t\t'" . $duree_e . "',\r\n\t\t\t\t\t\t\t\t\t\t'" . $heuredeb_dec . "',\r\n\t\t\t\t\t\t\t\t\t\t'" . $type_semaine . "',\r\n\t\t\t\t\t\t\t\t\t\t'0',\r\n\t\t\t\t\t\t\t\t\t\t'0',\r\n\t\t\t\t\t\t\t\t\t\t'" . $prof_e . "')"; } else { $sql = "INSERT INTO `edt_cours` (`id_cours`,\r\n\t\t\t\t\t\t\t\t\t\t`id_groupe`,\r\n\t\t\t\t\t\t\t\t\t\t`id_salle`,\r\n\t\t\t\t\t\t\t\t\t\t`jour_semaine`,\r\n\t\t\t\t\t\t\t\t\t\t`id_definie_periode`,\r\n\t\t\t\t\t\t\t\t\t\t`duree`,\r\n\t\t\t\t\t\t\t\t\t\t`heuredeb_dec`,\r\n\t\t\t\t\t\t\t\t\t\t`id_semaine`,\r\n\t\t\t\t\t\t\t\t\t\t`id_calendrier`,\r\n\t\t\t\t\t\t\t\t\t\t`modif_edt`,\r\n\t\t\t\t\t\t\t\t\t\t`login_prof`)\r\n\t\t\t\t\t\t\t\tVALUES ('',\r\n\t\t\t\t\t\t\t\t\t\t'" . $groupe_e . "',\r\n\t\t\t\t\t\t\t\t\t\t'" . $salle_e . "',\r\n\t\t\t\t\t\t\t\t\t\t'" . $jour_e . "',\r\n\t\t\t\t\t\t\t\t\t\t'" . $creneau_e . "',\r\n\t\t\t\t\t\t\t\t\t\t'" . $duree_e . "',\r\n\t\t\t\t\t\t\t\t\t\t'" . $heuredeb_dec . "',\r\n\t\t\t\t\t\t\t\t\t\t'" . $type_semaine . "',\r\n\t\t\t\t\t\t\t\t\t\t'0',\r\n\t\t\t\t\t\t\t\t\t\t'0',\r\n\t\t\t\t\t\t\t\t\t\t'" . $prof_e . "')"; } //echo "$sql<br />"; $retour["msg_erreur"] .= '<br /> ' . $sql; $envoi = mysqli_query($GLOBALS["mysqli"], $sql) or die('Erreur dans la requête ' . $sql); if ($envoi) { // et on renvoie 'ok' $retour["reponse"] = 'ok'; } else { $retour["reponse"] = 'non'; } } else { $retour["reponse"] = 'non'; } } return $retour; }
// la base réagit mal, on affiche toutes les infos sur la ligne qui n'est pas enregistrée /*echo '<b>Ligne n° '.$c.'</b> classe : '.$elements_cours[0]. ' type semaine : '.$elements_cours[1]. ' jour : '.$elements_cours[2]. ' heure deb : '.$elements_cours[3]. ' heure fin : '.$elements_cours[4]. ' prof : '.$elements_cours[5]. ' grpe : '.$elements_cours[6]. ' partie : '.$elements_cours[7]. ' matière : '.$elements_cours[8]. ' salle : '.$elements_cours[9]. ' Grpe/entière : '.$elements_cours[10].'<br />'."\n"; */ // On cherche à retrouver la salle du cours $salle = renvoiIdSalle($elements_cours[9]); if ($salle == "inc") { // on insère cette nouvelle classe dans la table adéquate $query = mysqli_query($GLOBALS["mysqli"], "INSERT INTO salle_cours SET numero_salle = '" . $elements_cours[9] . "', nom_salle = ''"); $salle = is_null($___mysqli_res = mysqli_insert_id($GLOBALS["mysqli"])) ? false : $___mysqli_res; } // Le type de semaine if ($elements_cours[1] == '') { $week_type = "0"; } else { $week_type = $elements_cours[1]; } // On veut récupérer le jour de la semaine $jour = renvoiJour($elements_cours[2]); // Ainsi que l'id du créneau id_definie_periode $debut = renvoiIdCreneau($elements_cours[3], $jour);