Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]$_GET nie czyta ++
Forum PHP.pl > Forum > Przedszkole
Abaddor
Pewnie odpowiedź jest prosta, nie nie znalazłem.

Przekazuję dane przez GET. Link wygląda tak:

szukaj.php?kategorie=C++

Po odebraniu przez $_GET['kategorie'] dostaję samo "C". Znaczki "++" są ucinane:|

Ktoś wie jak to zmienić? Koniecznie potrzebuje dostać C++(bo inaczej będę musiał kombinować...).
wookieb
użyj http://pl.php.net/manual/pl/function.rawurlencode.php na "c++"
Abaddor
Eh, wychodzi na to że muszę tą funkcję kodującą(rawurlencode) zastosować w całe stronie, tak?
Chyba że źle zrozumiałem zastosowanie tej funkcji.

Bo mam tak że z różnych linków, z różnych miejsc strony chcę dostać się do strony wypisującej Artykuły.
I na tej stronie odbieram tylko kategorię z linka i wyświetlam artykuły tej kategorii. Nie działa tylko dla kategorii C++ ze wcześniej wymienionego powodu.

Nie ma innego sposobu abym mógł odebrać całego stringa "C++" z GET? Bo jeśli naprawdę nie ma to muszę zmienić cały system sadsmiley02.gif
wookieb
No możesz ale dowolne ciągi jakie chcesz przekazac w parametrach urla musisz potraktować tą funkcją.
Co zreszta masz napisane w przykładzie w linku w którym ci podałem.
Abaddor
Wiem, poczytałem już trochę o tej funkcji i popróbowałem. Ale za dużo bym już musiał zmieniać żeby pozwolić sobie na przekazanie ciągu "C++".
Po prostu zrobię funkcję która będzie odbierać z GET i oddawać gotowe stringi do urzycia. NP.

Mając link artykuly.php?kategoria=Cpp

  1. $kategoria = KonwertujKategorie($_GET['kategoria'])


I w wyniku otrzymam string C++ gotowy do użycia i wypisania przy okazji:D


Dzięki za pomoc!
mls
Wiesz co oznacza znak "+" w URLu? Jeśli nie - odsyłam do całkowitych podstaw.
wookieb podał rozwiązanie, które musisz zastosować do generowania takich linków. I tylko w tą stronę.
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.