09 lutego 2008
Pisząc kod do kolejnej notki natknąłem się na pewien problem. Mianowicie:
<a href="http://www.wykop.pl/dodaj?url=http://eldoras.com&title=test" alt="Dodaj do Wykop.pl">
Po kliknięciu takiego linka... No właśnie. Czy do zmiennej url zostanie przekazane: http://eldoras.com&title=test
czy może stworzona zostanie (pożądana) zmienna "title" o wartości "test"?
Ja obstawiam, że to drugie - zakładam, że algorytm czytający GET jest mało tolerancyjny i analizuje każde & jako oddzielenie jego własnych zmiennych. Jak jednak przekazać przy pomocy GET url, który posiada jakieś zmienne przekazywane również metodą GET?
Musimy zakodować zawartość zmiennej url, zamieniając znaki "&" (ampersand) na "%26".
Tak więc kod:
<a href="http://www.wykop.pl/dodaj?url=http://eldoras.com%26title=test" alt="Dodaj do Wykop.pl">
powinien przypisać zmiennej url wartość wraz z wkodowaną zmienną title. Dla mnie jest to nowość, bowiem dotychczas sądziłem, że takie tricki jak & zamiast & w adresie url są zalecane tylko w celach walidacyjnych (pisząc to, musiałem w kodzie xHTML napisać &amp;). Jak widać, zagadnienie jest poważniejsze.
- Strona główna

- ← Smaczne kąski na luty (poprzedni wpis)
- → Jak udoskonalić i wypromować bloga? (następny wpis)








09 lutego 2008 o 23:13:33 | Link do tego komentarza
hm… Zapis http://eldoras.com&title=test dla domeny eldoras.com byłby jak najbardziej nieprawidłowy, więc nie widzę sensu zamiany znaku &.
09 lutego 2008 o 23:15:08 | Link do tego komentarza
Masz faktycznie rację. Niemniej, problem by mógł także wystąpić przy użyciu pytajnika. Chyba.