Перенаправление после публикации - PullRequest
2 голосов
/ 14 сентября 2010

После отправки формы (метода POST) я хочу перенаправить пользователя на определенную страницу.

обычно я использовал простую строку

header("Location: /path/to/redirect/");
exit;

У Zend_Controller_Action есть метод _redirect пример:

$this->_redirect("/path/to/redirect/");

Но есть одна простая проблема : если i обновить страницу (нажмите F5), последнее действие контроллера активируется.Так что это как двойной пост.Конечно, я могу использовать старый способ, но я просто хочу найти редирект в стиле Zend.

Редактировать: ps после перенаправления постов я хочу очистить данные формы.Конечно, я могу использовать собственный метод с заголовком ("location: / path"), но я искал его, реализованный в стандарте zf

Есть идеи?

Ответы [ 2 ]

2 голосов
/ 14 сентября 2010

Я думаю, это потому, что _redirect использует внутренний редирект. Вам нужно использовать внешний. Вам нужно использовать помощник действий Redirector напрямую ... в вашем действии:

$this->_redirector->gotoUrlAndExit($url);
0 голосов
/ 14 сентября 2010

Установить переменную сеанса, чтобы данные были опубликованы, если не опубликовать данные, перенаправить?

...