Partage
  • Partager sur Facebook
  • Partager sur Twitter

Vérification date d'entrée et date de sortie en La

Sujet résolu
    17 juillet 2019 à 23:53:19

    Bonjour,
    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!');
        }
    Merci pour votre aide.
    • Partager sur Facebook
    • Partager sur Twitter
      18 juillet 2019 à 0:22:23

      Bonsoir.

      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

      • Partager sur Facebook
      • Partager sur Twitter

      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.

        18 juillet 2019 à 9:23:45

        Bonjour,

        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.

        • Partager sur Facebook
        • Partager sur Twitter
        Seul on va plus vite, ensemble on va plus loin ... A maîtriser : Conception BDD, MySQL, PHP/MySQL
          9 août 2019 à 21:07:00

          Bonjour,

          Merci beaucoup pour vos réponses, mon problème est résolu. 

          • Partager sur Facebook
          • Partager sur Twitter

          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.
          • Editeur
          • Markdown