try { $date_fin = new DateTime(str_replace("/", ".", $_POST['date_fin_absence_eleve'][$i])); } catch (Exception $x) { $message_erreur_eleve[$id_eleve] .= "Mauvais format de date.<br/>"; continue; } try { $heure_fin = new DateTime($_POST['heure_fin_absence_eleve'][$i]); } catch (Exception $x) { $message_erreur_eleve[$id_eleve] .= "Mauvais format d'heure.<br/>"; continue; } $date_fin->setTime($heure_fin->format('H'), $heure_fin->format('i')); $saisie->setFinAbs($date_fin); $message_erreur_eleve[$id_eleve] .= verif_debut_fin_saisie($date_debut, $date_fin, $utilisateur, $current_cours); $saisie->setUtilisateurId($utilisateur->getPrimaryKey()); $saisie_discipline = false; // 20150404 // Il faudrait pouvoir tester ici si la saisie peut et doit être rattachée à un traitement existant // Pb: si un prof saisit une absence... puis s'il s'agit d'un retard... et qu'il faut ensuite un passage à l'infirmerie, il va être délicat de se baser sur le fait que la saisie est sur le même créneau (englobée?)... // Si on teste juste qu'une saisie englobe date_debut_saisie_engloblante<=date_debut_saisie et date_fin_saisie_engloblante>date_fin_saisie // ou date_debut_saisie_engloblante<date_debut_saisie et date_fin_saisie_engloblante>=date_fin_saisie // est-ce qu'on ne va pas rater des infos dans le cas d'un élève qui arrive avant sa date prévue de retour? $info_type_saisie = ""; if (isset($_POST['type_absence_eleve'][$i]) && $_POST['type_absence_eleve'][$i] != -1) { $type = AbsenceEleveTypeQuery::create()->findPk($_POST['type_absence_eleve'][$i]); if ($type != null) { $info_type_saisie = $type->getNom(); /* echo "<pre>"; print_r($type);