![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 6 Pomógł: 0 Dołączył: 21.08.2004 Ostrzeżenie: (0%) ![]() ![]() |
Postanowilem zmiksowac skrypt wyszukiwarki i skrypt odpowiedzialny za stronicowanie. Skrypty ww. zaczerpnalem ze stron tego forum.
Sprawa wyglada tak, ze majac slowo, które użytkownik szuka (zmienna $klucz) łacze się z bazą i wykonuje zapytanie: Plik wynik.php
Aby wszystko powyżej gralo ustawiam zmienna $ile = 5 . Tak dla info zmienna $klucz jest nazwą pola input wyszukiwarki. Następnie za pomocą funkcji while wyświetlam np. nazwy rekordów które spelniaja kryteria wyszukiwania.
Nastepnie korzystajac z poniyszego skryptu zliczam ile jest rekordów które zawierają słowo pochodzące ze zmiennej $klucz i na tej podstawie mogę ustalić liczbe podstron.
Wszystko wydaje sie być ok, tzn. wyświetla się prawidłowa liczba podstron, a także wyniki są prawidłowo wyświetlane, ale tylko na 1 stronie. Załóżmy że w wyniku szukania słowa kluczowego "123" mamy 17 rekordów i ustawiamy zmienną $ile na 5 to na pierwszej stronie otrzymujemy 5 wyników i pod spodem < poprzednia 1 [2] [3] [4] nastepna > , ale po kliknięciu na którąkolwiek z podstron skrypt jakby zapomina o warunkach dla rekordów czego wynikiem jest wyświetlenie wszystkich wyników z bazy i pod spodem oczywiście zmienia sie ilość numerów podstron zgodnie z zasadą (liczba rekordów w bazie): $ile . Bardzo proszę o wskazówke, bo nie mam pojecia co może byc nie tak. Próbowałem przerobić na swoje potrzeby skrypt z postu http://forum.php.pl/index.php?showtopic=681 , który po przerobieniu na moje potrzeby zachowywał się tak samo jak ten "mój", czyli pierwsza strona ok, a już pozostałe nie wyświetlają wyników zgodnie z warunkami. Coś mi chodzi po głowie, że może w jakiś sposób wartość zmiennej $klucz nie jest przekazywana do podstron, ale jak to zrobić? Coś czytałem kiedyś o global() czy coś w tym stylu, ale czy to by pomogło? Pozdrawiam |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Jest kilka sposobow na pamietanie warunku.
1) trzymanie w sesji 2) jesli to jest tylko jedna zmienna,mozesz tez pokusic sie o jej przekazywanie w url razem z numerem kolejnej strony -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 6 Pomógł: 0 Dołączył: 21.08.2004 Ostrzeżenie: (0%) ![]() ![]() |
Dzięki śliczne za rade! Udało mi się poprzez przekazanie wartości zmiennej $klucz w adresie URL do kolejnych stron poprzez użycie "&klucz=$klucz". Dla przykładu podam jak teraz wygląda linia 11 mojego kodu
Było:
Jest:
Pozdrawiam |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 03:21 |