Bonsoir,

J'ai remarqué une chose ce soir en débuguant mon programme. Après avoir tester un formulaire d'édition de profil utilisateur dans mon projet, j'ai remarqué que tous les utilisateurs auxquels j'ai touché ne pouvait plus se connecter. J'obtenais une erreur 500, ensuite en allant voir du côté de Symfony je retrouve ceci :
Notice: Undefined offset: 0around500 Internal Server Error - ContextErrorException

Je me suis alors penché sur le problème et je remarque un champ comportant une date dans ma base de données qui en ait la cause.
la date correspond à une date de fin de mise en service, et est la suivante après édition de formulaire : 0001-00-00 ou encore 1900-11-30
Et évidemment j'ai une date de mis en service qui est la date du jour de l'édition du formulaire (2017-04-06 par exemple).
Maintenant le programme fonctionne correctement, car j'ai mis un setDateFin(new \DateTime('0000-00-00')) dans mon bout de code qui en était la cause.

Et j'aimerai comprendre, même si j'ai réussi à faire marcher normalement mon programme, pourquoi cette erreur 500 est elle survenue ?
Je suis encore une novice sur tout cela, du coup excusez moi si ma question paraît un peu bizarre ^^'

Je vous remercie :)

1 réponse


Si tu utiles Doctrine pour tes requêtes, et le composant Form de Symfony, un champ de type datetime doit être alimenté avec un objet \DateTime.