Redirect redirige complètement le serveur vers la page appelé et
produit donc une nouvelle requête complète. Du coup au niveau du
navigateur ce n'est pas la même URL qui est affichée.
Foward change simplement l'action en cours pour une autre. On reste
dans la même transaction HTTP. Pour le client, on est donc toujours
dans la même URL. Ce qui veut dire que tu n'as pas besoin de repasser
les paramètres à la nouvelle action si tu souhaites accéder aux
paramètres envoyés par le client. Par contre si dans ta première
action tu crées une variable et que tu veux avoir cette nouvelle
variable dans l'action du forward, le plus simple est de l'ajouter
dans les variables de la requête en faisant avant le forward :
$this->getRequest()->getParameterHolder()->set('ma_variable',
$valeur) ;
Dans l'action du forward, tu la récupéres en faisant:
$this->ma_variable = $this->getRequestParameter('ma_variable) ;
Nautile