![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 300 Pomógł: 32 Dołączył: 31.07.2006 Ostrzeżenie: (0%) ![]() ![]() |
W sumie nie jestem pewien czy to co obserwuje to wina jakiś ustawień apacha, modrewrite czy po prostu standardowe zachowanie duetu apache2+php, więc wolę się zapytać bardziej doświadczonych ludzi (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Przekazuje sobie za pomocą GET różne opcje do wyszukiwarki. Wszystko traktuje za pomocą urlencode (po stronie serwera lub klienta) i działa to ok, z dwoma wyjątkami: '+' i '/'. Jeśli '+' zakoduje jako '%2B to w $_GET otrzymuje ' ' - czyli coś zdekodowało ten jeden jedyny znak na '+' a następnie '+' na ' '. Rozwiązaniem jest zakodowanie jako '%252B' ale wydaje mi się cokolwiek dziwne, ze są potrzebne aż takie kombinacje. Podobnie dziwnie zachowuje się '/' - otóż kiedy przekaże go jako '/' to działa... a przy zakodowaniu jako '%2F' ( co robi przecież urlencode) apache chyba traktuje część adresu a nie query i zwraca 404. Proszę o wyjaśnienie dlaczego tak się dzieje i z czego to wynika, bo zapewne tak ma to działać, tylko ja nie wiem dlaczego (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Ten post edytował ucho 12.12.2007, 10:12:46 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 20:55 |