J'ai 2 champs dans un formulaire, le premier champ est la date de début de révision et le second champ est la date de fin de révision. Je souhaiterai mieux gérer ces deux dates, par exemple j'aimerais éviter que l'utilisateur tape une date de fin de révision avant qui est antérieur à la date de début de révision avec un message d'erreur.
public function rules()
{
return [
//
'date_revision_start' => 'after:2009-01-01|before:2023-01-01',
'date_revision_end' => 'after:2009-01-01|before:2023-01-01'
];
}
Je ne sais pas si le début de ma condition est correcte?
if ($this->request->get('date_revision_start') < $this->request->get('date_revision_end'))
{
return redirect()->route('revisions.index')
->with('error', 'The end date cannot be before the start date!');
}
Pour la condition qui retourne une erreur c'est plutôt l'inverse, il y a erreur si la date de début est supérieure(et non inférieure) à la date de fin.
Par contre ton sujet n'a rien à voir avec la base de données.
- Edité par Lartak 18 juillet 2019 à 0:23:36
Face a quelqu'un pour qui l'on n'éprouve que de l'aversion et du mépris, les yeux d'un homme deviennent extrêmement froids et cruels.
Pour moi il y a deux contrôles à faire dans ton application. Le premier est un "simple" contrôle de validité du formulaire. En JavaScript, tu peux vérifier dès la saisie (événement onChange) et alerter l'utilisateur qu'il doit resaisir les dates. Tu peux aussi faire que la date de fin s'initialise automatiquement avec la date saisie dans la date de début.
Le second contrôle devrait être directement porté par la base de données, qui est maître des données et de leur intégrité. Il faudrait mettre en place un TRIGGER BEFORE INSERT qui contrôle les deux dates et retourne une erreur (SIGNAL avec MySQL) si incohérence. Erreur que tu devras traiter côté application.
Merci beaucoup pour vos réponses, mon problème est résolu.
Vérification date d'entrée et date de sortie en La
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
Face a quelqu'un pour qui l'on n'éprouve que de l'aversion et du mépris, les yeux d'un homme deviennent extrêmement froids et cruels.