Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [inne][PHP]Wartość parametru w adresie URL zawierająca spacje
Demoneos
post
Post #1





Grupa: Zarejestrowani
Postów: 149
Pomógł: 0
Dołączył: 26.02.2008

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


W adresie URL przesyłam parametr, które wartość zawiera spacje, np:
  1. http://site.com/?name=good luck

i teraz w zmiennej $_REQUEST['name'] jest nie "good luck", a tylko "good" (czyli pierwszy wyraz przed spacją).
Czy można więc jakoś przesłać w adresie URL parametr, którego wartość zawiera w sobie spacje?

Ten post edytował Demoneos 12.12.2011, 21:41:29
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Demoneos
post
Post #2





Grupa: Zarejestrowani
Postów: 149
Pomógł: 0
Dołączył: 26.02.2008

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


Wysyłam więc adres URL kodując wartość parametru za pomocą funkcji urlencode:
  1. http://site.com/?name=<?php echo urlencode( "good luck" ); ?>

i rzeczywiście po najechaniu myszką na link na pasku statusu przeglądarki jest:
http://site.com/?name=good+luck
czyli + zamiast spacji.
Tyle tylko, że jak to później próbuję odebrać przy pomocji funkcji urldecode:
  1. urldecode( $_REQUEST['name'] )

to nadal otrzymuję tylko pierwszy wyraz przed pierwszą spacją.
Co więc jest źle?

------ EDIT ------
W Example #1 na stronie urldecode widzę,
że tej funkcji urldecode() nie używa się w tak prosty sposób jak myślałem (IMG:style_emoticons/default/smile.gif)
Z tym, że w Example #1 jest błąd, bo zamiast $QUERY_STRING powinno być $_SERVER['QUERY_STRING'] (IMG:style_emoticons/default/smile.gif)

Mogłem więc już po odświeżeniu strony odbierać już całe wartości (wraz ze spacjami) parametrów z adresu URL.
Miałem natomiast zupełnie inny problem - spacje nie działały w funkcji header(). Ale tutaj na forum (komentarz z 10 Aug 06 6:26) ktoś poradził, żeby zmienną zawierającą nazwę pliku otoczyć "podwójnym cytatem":
  1. header('Content-Disposition: attachment; filename="'.$name.'"');

i zadziałało (IMG:style_emoticons/default/smile.gif)

Ten post edytował Demoneos 13.12.2011, 10:08:04
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 15.10.2025 - 05:19