Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Problem z '&' w nazwie zmiennej POST
mefistofeles
post
Post #1





Grupa: Zarejestrowani
Postów: 255
Pomógł: 0
Dołączył: 23.06.2009

Ostrzeżenie: (10%)
X----


Witam,

Mam w zmiennej POST coś w tym stylu:
zmienna.php?nazwa=dolce & gabana
& powoduje, że $nazwa tak naprawdę zawiera tylko słowo 'dolce'

Czy jest jakiś sposób żeby inorować & i traktować je nie jak kolejną zmienną tylko jak stringa ?
Go to the top of the page
+Quote Post
smietek
post
Post #2





Grupa: Zarejestrowani
Postów: 306
Pomógł: 32
Dołączył: 20.01.2008

Ostrzeżenie: (20%)
X----


Z tego co widzę, to jest GET a nie POST.
Musisz to jakoś zakodować, np. zwykłym base64 (base64_encode, base64_decode)
Go to the top of the page
+Quote Post
Crozin
post
Post #3





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


Skorzystaj z urlencode.

EDIT:
@smietek: to nie jest żaden "GET" tylko fragment URLa, który z samą metodą nie ma nic wspólnego.

Ten post edytował Crozin 31.12.2010, 15:56:56
Go to the top of the page
+Quote Post
mefistofeles
post
Post #4





Grupa: Zarejestrowani
Postów: 255
Pomógł: 0
Dołączył: 23.06.2009

Ostrzeżenie: (10%)
X----


Użyłem urlencode jednak znak '&' zostaje zamieniony na: 'andamp;' i taki ciąg mi się pojawia co wygląda okropnie a ja chce mieć po prostu & :/

Znalazłem proste obejście.
Za pomocą str_replace zamieniam na końcu andamp; na & i jest ok.
Dzięki za pomoc (IMG:style_emoticons/default/smile.gif)

Ten post edytował mefistofeles 31.12.2010, 16:08:08
Go to the top of the page
+Quote Post
Crozin
post
Post #5





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


ciekawe...
Go to the top of the page
+Quote Post
mefistofeles
post
Post #6





Grupa: Zarejestrowani
Postów: 255
Pomógł: 0
Dołączył: 23.06.2009

Ostrzeżenie: (10%)
X----


U mnie jest inaczej aczkolwiek jak napisałe śmietek rzeczywiście chodziło mi o GET a nie POST (IMG:style_emoticons/default/winksmiley.jpg)

& jest zamieniane na andamp; ale używając:

$tytul=$_GET['u'];
$tytul = str_replace('andamp;', '&', $tytul);

Dostaję samo &.

Ogólnie trochę lipa.
Spacje są zamieniane na + i ogólnie linki w ten sposób zakodowane są dośc brzydkie.
Chyba zamienię sobie & na 'and' i poprostu tak to obejdę bo w ten sposób jakoś to dziwnie wychodzi.
Go to the top of the page
+Quote Post
kapuch
post
Post #7





Grupa: Zarejestrowani
Postów: 389
Pomógł: 69
Dołączył: 26.04.2010
Skąd: Łódź

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


No bo pozniej uzywasz urldecode(), czytaj manual.
Logiczne, ze jesli cos pierw kodujesz, to pozniej trzeba to dekodowac?

Ten post edytował kapuch 31.12.2010, 16:36:12
Go to the top of the page
+Quote Post
mefistofeles
post
Post #8





Grupa: Zarejestrowani
Postów: 255
Pomógł: 0
Dołączył: 23.06.2009

Ostrzeżenie: (10%)
X----


No chyba że tak (IMG:style_emoticons/default/smile.gif)
Bez dekodowania też miało to jakiś sens bo dało się przywrócić stringi, ale skoro jak to zdekoduje będzie lepiej to super.
Go to the top of the page
+Quote Post

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: 14.09.2025 - 23:22