bonsoir Tous,
je voudrais que dans ma vue Edit (page de modification), les dates s'affichent au format dmy.
j'ai essayé de formater et dans le controller et dans la vue elle meme, les dates s'affichent toujours en Ymd
voir piece jointe.
merci
bonsoir Tous,
je voudrais que dans ma vue Edit (page de modification), les dates s'affichent au format dmy.
j'ai essayé de formater et dans le controller et dans la vue elle meme, les dates s'affichent toujours en Ymd
voir piece jointe.
merci
Normalement quelque chose comme ceci devrait suffire :
Si ça ne marche pas (tu utilises un datepicker apparement en plus), il nous faudrait quelques lignes de code pour comprendre.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 echo $this->Form->input('nomChamp', array( 'type' => 'date', 'dateFormat' => 'DMY' ));
Un message utile vous a aidé ? N'oubliez pas le
www.simplifions.fr - Simplifier vos comptes entre amis !
mon probleme ne se situe pas à la sélection de la date: lorsque je sélectionne une date dans mon datepicker, il n'y a pas de probleme, la date s'affiche bien au format dmy.
mais plutot à l'ouverture de la page de modification, vu que dans la base de données, les dates sont au format ymd, elles s'affichent telles quelles lorsque l'on ouvre la page de modif.
Aaah ok !
Du coup, deux manières de faire :
- directement dans le SQL quand tu vas chercher ta date, avec la fonction DATE_FORMAT (en supposant que tu utilises mysql)
- Ou alors directement en php (dans ton contrôleur avec un code s'approchant de celui-ci) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 $this->request->data['monModel']['maDate'] = date('d-m-Y',strtotime($resultatRequeteRecherche['monModele']['maDate']));
Un message utile vous a aidé ? N'oubliez pas le
www.simplifions.fr - Simplifier vos comptes entre amis !
oui, comme vous le voyez j'avais déjà essayé cette option: en rouge, toutes mes tentatives lol; mais rien n'y fit;
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42 public function edit($id = null) { /*$this->request->data['Program']['datedebut']= date('d-m-Y', strtotime(str_replace('-', '/', $this->request->data['Program']['datedebut']))); $this->request->data['Program']['datefin']= date('d-m-Y', strtotime(str_replace('-', '/', $this->request->data['Program']['datefin'])));*/ if (!$this->Program->exists($id)) { throw new NotFoundException(__('Invalid program')); } /*$this->request->data['Program']['datefin']= date('d-m-Y', strtotime(str_replace('-', '/', $this->request->data['Program']['datefin'])));*/ if ($this->request->is(array('post', 'put'))) { /*$this->request->data['Program']['datedebut'] = implode('-', array_reverse(explode('/',$this->request->data['Program']['datedebut']))); $this->request->data['Program']['datefin'] = implode('-', array_reverse(explode('/',$this->request->data['Program']['datefin']))); */ /*$this->request->data['Program']['datedebut']= date('d-m-Y', strtotime(str_replace('/', '-', $this->request->data['Program']['datedebut']))); $this->request->data['Program']['datefin']= date('d-m-Y', strtotime(str_replace('/', '-', $this->request->data['Program']['datefin'])));*/ if ($this->Program->save($this->request->data)) { //debug($this->request->data); $this->Session->setFlash(__('The program has been saved.')); return $this->redirect(array('action' => 'index')); /*$this->redirect(array('controller' => 'programs', 'action' => 'view', $this->Program->id));*/ } else { $this->Session->setFlash(__('The program could not be saved. Please, try again.')); } } else { $options = array('conditions' => array('Program.' . $this->Program->primaryKey => $id)); //$this->request->data['Program']['datedebut']= date('d-m-Y', strtotime(str_replace('-', '/', $this->request->data['Program']['datedebut']))); $this->request->data = $this->Program->find('first', $options); //debug($data['Program']['datedebut']); } }
peut-etre que je n'ai pas mis cette requete à la bonne place?
En effet, la ligne d'après ton dernier essai,
En faisant cela, tu ré écrases entièrement $this->request->data, et donc tout ce que tu avais pu y mettre avant. Tu dois mettre ton code après cette ligne là.
Code : Sélectionner tout - Visualiser dans une fenêtre à part $this->request->data = $this->Program->find('first', $options);
Un message utile vous a aidé ? N'oubliez pas le
www.simplifions.fr - Simplifier vos comptes entre amis !
merci pour l'explication je comprends mieux
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager