Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [CI]Wyszukiwarka
Forum PHP.pl > Forum > PHP > Frameworki
Que
Witam,

Piszę projekt w CI jednym z elementów projektu będzie wyszukiwarka (chciałbym aby działała na zasadzie get)
czyli np /main/szukaj/slowo/

a klasycznym php wystarczylo by method="GET" input type="text" name="keyword" i submit (i w adresie url by bylo keyword=cos) nastepnie rewrite i jest szukaj/cos)

  1. <form action="<?=site_url('main/szukaj'); ?>" method="post"/>
- z tego nic nie wynika
  1. <form action="<?=site_url('main/szukaj'); ?>" method="get"/>
zwroci main/szukaj/?keyword=slowo


Czyli podsumowując wpisując na stronie głownej kontroler (main) słowo X w wyszukiwarke chciałbym mieć wyniki w postaci
/szukaj/x/ (w url)

Dziękuje.

nie mam pomysłu jak rozwiązać ten problem w CI....
LBO
W akcji która przyjmuje dane z formularza zrób przekierowanie do innej akcji, jako parametr w URL wstawiając szukaną frazę pobraną z POST.
wielokropek
Tak się nie da, ponieważ wówczas w url będą niedozwolone znaki (gdy ktoś będzie szukał czegoś np. ze znakami diakrytycznymi).

CI nie obsługuje niestety formularzy przesyłanych przez GET i trzeba to obejść. Ja bym to rozwiązał tak (tak działa szukajka na forum CodeIgnitera): kontroler zapisuje zapytanie oraz hash zapytania do bazy i przekierowuje na stronę z wynikami, gdzie parametrem jest hash. Czego należy szukać musisz najpierw pobrać z bazy po hashu.

Dodatkowo można wtedy łatwo dopisać najpopularniejsze zapytania ;-)
nrm
Cytat(wielokropek @ 12.12.2007, 00:40:27 ) *
Tak się nie da, ponieważ wówczas w url będą niedozwolone znaki (gdy ktoś będzie szukał czegoś np. ze znakami diakrytycznymi).

pewnie ze sie da winksmiley.jpg j/w + odpowiednie ustawienie przepuszczanych znakow
reegen
Witam , też ostatnio chciałem zrobić taką wyszukiwarkę i dokładnie ten sam problem , szukałem w necie ze dwa dni i kicha, jedno podpowiem na pewno trzeba iść droga POST , taka szukajka jest też na smog.pl i obsługuje polskie znaki jak widać postem śle coś takiego

  1. POST /szukaj/ search_submit_btn.x=23&search_submit_btn.y=10&search_txt=dowcip&search_submit=


Doszedłem do wniosku, że w httacces trzeba napisać aby przechwyć tą zmienną z posta i dać redirect pod dowolny url z tą zmienną na polskie krzaki wystarczy dać (.*) a później urla odfiltrować już w phpie dla bezpieczeństwa oczywiście ale niestety nie potrafię napisać tej reguły choć myślę że tak powinno wyglądać rozwiązanie.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.