Вы не можете одновременно отображать содержимое и перенаправлять, используя $this->redirect()
, потому что для перенаправления используются заголовки http.Вы должны отобразить сообщение либо на целевой странице, либо вместо этого использовать JavaScript для перенаправления.
Вы можете сохранить переменную сеанса одновременно с сохранением пользовательских данных ($this->Session->write( 'newUser', 1 )
) и проверить переменную вФорма входа.Если переменная установлена, покажите окно предупреждения и очистите переменную.
Другой способ - использовать дополнительный параметр в ссылке, который сообщает странице входа в систему, что он должен показывать предупреждение (users / login / newUser): 1).Недостатком является то, что если пользователь добавит страницу в закладки сразу после регистрации, он будет видеть сообщение каждый раз, когда посещает страницу.
Если вы показываете предупреждение и затем перенаправляете, используя JavaScript вместо заголовков, это, конечно, работаеттолько если у пользователя включен JS, поэтому в этом случае вы также должны предоставить кликабельную ссылку, ведущую на страницу входа.