Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [CI]Wyszukiwarka
Que
post
Post #1





Grupa: Zarejestrowani
Postów: 32
Pomógł: 0
Dołączył: 29.09.2007

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


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....

Ten post edytował Que 9.12.2007, 16:10:09
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
LBO
post
Post #2





Grupa: Zarejestrowani
Postów: 1 415
Pomógł: 117
Dołączył: 7.09.2005
Skąd: Warszawa

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


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.
Go to the top of the page
+Quote Post
wielokropek
post
Post #3





Grupa: Zarejestrowani
Postów: 34
Pomógł: 1
Dołączył: 23.04.2006

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


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 ;-)
Go to the top of the page
+Quote Post
LBO
post
Post #4





Grupa: Zarejestrowani
Postów: 1 415
Pomógł: 117
Dołączył: 7.09.2005
Skąd: Warszawa

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


i męczyc bazę? Nie wydaje mi się... urldecode" title="Zobacz w manualu PHP" target="_manual i urlencode" title="Zobacz w manualu PHP" target="_manual
Go to the top of the page
+Quote Post
nrm
post
Post #5





Grupa: Zarejestrowani
Postów: 627
Pomógł: 33
Dołączył: 1.05.2005
Skąd: Katowice

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


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


--------------------
Go to the top of the page
+Quote Post
reegen
post
Post #6





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 19.01.2007

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


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.

Ten post edytował reegen 17.12.2007, 01:12:23
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 20.08.2025 - 10:16