![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 59 Pomógł: 0 Dołączył: 8.07.2016 Ostrzeżenie: (0%) ![]() ![]() |
Przyjmijmy że przez formularz HTML wyszukiwarki, otrzymałem w wyniku zapytania 4-ry rekordy i każdy z nich staje się linkiem po którego kliknięciu wyświetlają się na nowej podstronie, dokładne szczegóły czyli dodatkowe pola z bazy MySQL.
- Teraz zamykam tą podstronę ze szczegółami i chciałbym wrócić do poprzedniej strony z tymi wcześniej znalezionymi 4-ema rekordami i kliknąć na kolejny żeby zobaczyć jego szczegóły wyniku. Niestety wszelkie history.back() itp. nie spełniają swojej roli bo otrzymuje DOKUMENT WYGASŁ. Jak mogę to wykonać taką funkcjonalność, najlepiej z użyciem samego PHP, ale może być też ostatecznie java ?. Czy można by zapamiętać jakoś w zmiennej sesyjnej cały wynik wyszukiwania z poprzedniej strony i wracać do tej poprzedniej strony z wyszukanymi wynikami po kazdym zamnięciu podstrony ze szczegółami ? Z góry dziękuje za pomoc ! |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 324 Pomógł: 52 Dołączył: 18.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
Masz 2 wyjścia:
albo z linku otworzyć nową podstronę (lub okno) wtedy nie wracasz do strony z wynikami a tym samym nie odświeżasz formularza, albo zobacz jak to robi google, przejmuje wyniki formularza i wrzuca je do adresu strony, czyli wysyła dane GET-em, wtedy powrót do strony z wyszukanymi rekordami nie przeładuje formularza bo go tam nie ma. Ten post edytował gino 19.06.2021, 14:02:55 |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 1 495 Pomógł: 245 Dołączył: 1.07.2009 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
Zakładam że miałeś na myśli JavaScript a nie Java;) To duża różnica. Oprócz powyższych rozwiązań zaproponowanych przez kolegę możesz też zapytanie, lub wyniki wyszukiwania wrzucić w cookies i przed każdym otwarciem strony z wynikami wyszukiwania sprawdzać czy jest cookies. To samo możesz zrobić w bazie ale to raczej nieoptymalne. Możesz też takie dane przechowywać w zmiennej sesji i to chyba najlepsze rozwiązanie.
-------------------- Uśpieni przez system, wychowani przez media,
Karmieni zmysłami, próżnymi żądzami... -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- Jesteś zbyt leniwy, żeby się zarejestrować? Ja jestem zbyt leniwy aby Ci pomóc! -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 59 Pomógł: 0 Dołączył: 8.07.2016 Ostrzeżenie: (0%) ![]() ![]() |
pisząc java, pisałem w kontekście PHP i chodziło mi o javascript :-) Właśnie najbardziej skłaniałbym sie do użycia zmiennej sesji, ale potrzebuje, jakiegoś przykładu lub nakierowania, jak to zrobić. Jak zapamiętać w jeden zmiennej sesji, wynik, np. kilku znalezionych rekordów i jak wykorzystać to przy powrocie na poprzednią stronę i najlepiej żeby nie wykonywać ponownego zapytania do bazy po to by uzyskać ten sam wynik. Tworzenie tablic tymczasowych w mysql z wynikami, to tez chyba niezbyt dobry pomysł. Idealne było by coś na wzór includ-owania utworzonej strony z wynikami az do czasu zabicia sesji.
|
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 1 495 Pomógł: 245 Dołączył: 1.07.2009 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
Po prostu wrzuć wynik wyszukiwania do sesji. Kiedy masz w pętli wyświetlanie kolejnych rekordów wyniku wyszukiwania dodawaj je również do tablicy sesji przy każdej kolejnej iteracji.
-------------------- Uśpieni przez system, wychowani przez media,
Karmieni zmysłami, próżnymi żądzami... -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- Jesteś zbyt leniwy, żeby się zarejestrować? Ja jestem zbyt leniwy aby Ci pomóc! -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 24.07.2025 - 16:05 |