Mauvais enregistrement champ date en base de données

Eléphant du PHP | 151 Messages

25 sept. 2014, 17:33

A la limite faire un
 
var_dump( $form->getData()); 
$person->setPersBirth(new DateTime("2014-09-25"));
die("fin");
$person = $this->getDoctrine()->getRepository('IfrassMainBundle:Person')->find($form->get('persid')->getData());
$person
->setPersName($form->get('pers_name')->getData())
->setPersFirstName($form->get('pers_firstname')->getData())
->setPersMobil($form->get('pers_mobil')->getData())
->setPersPhone($form->get('pers_phone')->getData())
->setPersEmail($form->get('pers_email')->getData())
->setPersBirth($form->get('pers_birth')->getData());
 
Développeur d'applications pour intranets industriels (IHM), DBA Oracle, auto entrepreneur. Je fuis les frameworks car je pense comme Rasmus Lerdorf : "all PHP frameworks suck"...
Je me suis lancé dans la reprise du projet PhpMyNewsletter (GNU GPL), que je vous invite à essayer.

echo ($user=='enregistré?"je t'aide":"je t'aide pas !");

Mammouth du PHP | 571 Messages

25 sept. 2014, 18:08

tu reçois bien la date malheureusement cette date est de type string, or doctrine attends un objet de type DateTime :
$person = $this->getDoctrine()->getRepository('IfrassMainBundle:Person')->find($form->get('persid')->getData());
$date = new \DateTime($form->get('pers_birth')->getData() );
$person
->setPersName($form->get('pers_name')->getData())
->setPersFirstName($form->get('pers_firstname')->getData())
->setPersMobil($form->get('pers_mobil')->getData())
->setPersPhone($form->get('pers_phone')->getData())
->setPersEmail($form->get('pers_email')->getData())
->setPersBirth( $date );

Eléphant du PHP | 151 Messages

26 sept. 2014, 09:11

Développeur d'applications pour intranets industriels (IHM), DBA Oracle, auto entrepreneur. Je fuis les frameworks car je pense comme Rasmus Lerdorf : "all PHP frameworks suck"...
Je me suis lancé dans la reprise du projet PhpMyNewsletter (GNU GPL), que je vous invite à essayer.

echo ($user=='enregistré?"je t'aide":"je t'aide pas !");