Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [HTML][PHP] Adresy hiperłącz zakodowane przez urlencode i problemy przeglądarek, Traktowanie pełnych zakowanych linków jak względne.
8rol
post
Post #1





Grupa: Zarejestrowani
Postów: 66
Pomógł: 0
Dołączył: 10.10.2009

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


Witam.


Witam, wyświetlam sobie z bazy zapisane referery, tworząc z nich hiperłącza.
Nazwą hiperłącza jest adres przepuszczony przez htmlentities, a adresem jest adres przepuszczony przez urlencode.
Oczywiście wszystko to w celu zapobiegnięcia wykonania XSS itp.


Jednak jest pewien problem. Kompletne adresy zakodowane przez urlencode przeglądarka traktuje jak adresy względne, doklejając do nich z przodu obecną lokalizacje.

Domyślam się, że problem ten spowodowany jest tym, że zakodowany adres zaczyna się jako: http%3A%2F%2F zamiast http://

W jaki sposób rozwiązać ten problem? Wiadomo, można by się bawić w preg_replace, str_replace itp. ale myślę, że problem nie jest nowy i ktoś zna znacznie lepsze rozwiązanie?
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 21.08.2025 - 07:56