Salut,

Bon en fait j'ai eu une autre erreur sur le tuto zend framework mvc de Guillaume Rossolini.
J'arrive bien a modifier un album ou a le supprimer.
Mais le pb c'est que ds le 1ier cas ou dans le 2ième les changements n'apparaissent pas dessuite ds ma liste des albums.

Je suis obligé de faire un F5 sur la page de listing pour voir enfin toutes les mises a jours effectuées.

Bien que vous le connaissiez peut-être déjà je vous remets le code du controlleur pour les fonctions de modification et de suppression.

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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
 
    function modifierAction()
    {
        $this->view->title = "Modifier l'album";
        $album = new Album();
 
        if ($this->_request->isPost()) {
            Zend_Loader::loadClass('Zend_Filter_StripTags');
            $filter = new Zend_Filter_StripTags();
 
            $id = (int)$this->_request->getPost('id');
            $artist = $filter->filter($this->_request->getPost('artist'));
            $artist = trim($artist);
            $title = trim($filter->filter($this->_request->getPost('title')));
 
            if ($id !== false) {
                if ($artist != '' && $title != '') {
                    $data = array(
                        'artist' => $artist,
                        'title'  => $title,
                    );
                    $where = 'id = ' . $id;
                    $album->update($data, $where);
 
                    $this->_redirect('/');
                    return;
                } else {
                    $this->view->album = $album->fetchRow('id='.$id);
                }
            }
        } else {
            // album id should be $params['id']
            $id = (int)$this->_request->getParam('id', 0);
    	    if ($id > 0) {
    	        $this->view->album = $album->fetchRow('id='.$id);
    	    }
        }
 
        // additional view fields required by form
        $this->view->action = 'modifier';
        $this->view->buttonText = 'Mettre à jour';
    }
 
    function supprimerAction()
    {
        $this->view->title = "Supprimer l'album";
 
        $album = new Album();
        if ($this->_request->isPost()) {
            Zend_Loader::loadClass('Zend_Filter_Alpha');
            $filter = new Zend_Filter_Alpha();
 
            $id = (int)$this->_request->getPost('id');
            $del = $filter->filter($this->_request->getPost('del'));
 
            if ($del == 'Oui' && $id > 0) {
                $where = 'id = ' . $id;
                $rows_affected = $album->delete($where);
            }
        } else {
            $id = (int)$this->_request->getParam('id');
            if ($id > 0) {
                // only render if we have an id and can find the album.
                $this->view->album = $album->fetchRow('id='.$id);
 
                if ($this->view->album->id > 0) {
                    // render template automatically
                    return;
                }
            }
        }
 
        // redirect back to the album list unless we have rendered the view
        $this->_redirect('/');
    }
Quelqu'un a t-il déjà eu ce problème?

Merci d'avance!