Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Usuwanie sesji
pitu
post
Post #1





Grupa: Zarejestrowani
Postów: 476
Pomógł: 96
Dołączył: 10.04.2008
Skąd: Koszalin

Ostrzeżenie: (0%)
-----


Witam

Wykonuję formularz wyszukiwarki. Wyniki są przesyłane po zmiennej POST, w wynikach mam stronicowanie. Po przejściu np. na drugą stronę normalnie nie przekazuje przesłanych wcześniej zmiennych, więc zastosowałem sesję i jest niby dobrze.

Wykonałem to tak:
  1. if(isset($_SESSION['marka'])){
  2. $_POST['marka'] = $_SESSION['marka'];
  3. }
  4. else {
  5. $_SESSION['marka'] = $_POST['marka'];
  6. }


Problem pojawia się jeżeli chcę jeszcze raz coś wyszukać, oczywiście zapamiętana w sesji jest stara zmienna i szuka właśnie jej. Czy jest jakiś sposób aby po wyjściu na kasowanie sesji po każdym wyszukaniu i nadpisanie jej nową wartością?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
mortus
post
Post #2





Grupa: Zarejestrowani
Postów: 2 178
Pomógł: 596
Dołączył: 25.09.2009
Skąd: Piwniczna-Zdrój

Ostrzeżenie: (0%)
-----


Bo to raczej powinno wyglądać inaczej:
  1. if(isset($_POST['marka']) && $_POST['marka'] != '') {
  2. $_SESSION['marka'] = $_POST['marka'];
  3. }

a dalej w skrypcie powinieneś się posługiwać zmienną z tablicy $_SESSION, a nie z tablicy $_POST.
Przejście na kolejną stronę wyników wyszukiwania nie powinno się wiązać z ponownym przesłaniem szukanej frazy przez $_POST, bo ona jest już zapisana w tablicy $_SESSION.

EDIT: Jeśli spełnisz powyższe warunki, to nie będzie problemu z wyszukiwaniem nowej frazy, bo warunek instrukcji warunkowej będzie spełniony podczas każdego wyszukiwania.

Ten post edytował mortus 14.01.2012, 18:18:30
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 18.10.2025 - 01:24