![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 22.08.2007 Skąd: Gdańsk / Chełmno Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Mam taki problem: Buduje sklep a konkretnie składanie zamówienia. Chciał bym zrobić tak, że pierwszy ekran po kliknięciu w "Składam zamówienie" to strona z formularzem logowania oraz rejestracji. Chciał bym Aby po zalogowaniu / rejestracji system przerzucił mnie na strone z formularzem składania zamówienia - czyli nie standardowo na np. "/" tylko gdzie indiziej. Robie tak: W "Składam zamówienie": Kod $orderNS = new Zend_Session_Namespace('order'); $orderNS->setExpirationHops(1); $orderNS->wantToOrder = true; Widok tej akcji wygląda mniej więcej tak: Kod <?php echo $this->action('index', 'login'); ?> <?php echo $this->action('register', 'user'); ?> Dalej w akcji /login/index robie w ten sposób: Kod require_once 'Zend/Session/Namespace.php'; $orderNS = new Zend_Session_Namespace('order'); if( $orderNS->wantToOrder !== null ) { print 'ustawiam NS'; $orderNS = new Zend_Session_Namespace('order'); $orderNS->setExpirationHops(1); $orderNS->wantToOrder = true; } No i po kliknięciu w zaloguj i przejsciu na akcje /login/login Kod require_once 'Zend/Session/Namespace.php'; $orderNS = new Zend_Session_Namespace('order'); Zend_Debug::dump($orderNS->wantToOrder); Wynikiem jest NULL Chciał bym aby w każdym kroku rejestracji / logowania jeśli jest coś w Zend_Session_Namespace('order') to przedłużyć sesję o jeszcze jednego "Hopsa" i w odpowiednim momencie przekierować na formularz skłądania zamówienia. Problem polega na tym, że gdy użyje metody setExpirationHops raz i strona się przeładuje to następnym razem mimo iż ustawie hopsy na 1 to namespace pamięta, że strona raz się już przeładowała a ja nie wiem jak długo użytkownikowi zajmie logowanie = na ile ustawiac hopsy w kazdym z kroków - użytkownik może przecież pomylić się niejednokrotnie przy logowaniu. Proszę o pomoc. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 19.08.2025 - 15:18 |