Autor Zpráva
PetrT
Profil *
Zdravím,
mám vytvořený následující script:
<div id="questy-6"> </div>
<script type="text/javascript">
$('#questy-6').html('Načítám požadované questy..');
$.ajax({
url: "http://csforces.eu/dev/bbcode/questy.php?uzivatel=Trsak&questy=Biohazard|Clock_Tower|One_of_a_Kind|Stolen_Hearts|‎Love_story"
}).done(function(data) {
$('#questy-6').html(data);
});
</script>

Fungoval bez problémů, až do chvíle, kdy začal nesmyslně přidávat znaky do volané URL. Například zrovna u toho scriptu volá URL takto:
http://csforces.eu/dev/bbcode/questy.php?uzivatel=Trsak&questy=Biohazard|Clock_Tower|One_of_a_Kind|Stolen_Hearts|%E2%80%8ELove_story
Takže přidá %E2%80%8E před poslední název Questu.
Jak je to možné? A dá se tomu nějak zabránit?
Chamurappi
Profil
Reaguji na PetraT:
Stolen_Hearts|‎Love_story
Tady přímo ve svém kódu máš za svislítkem před písmenem L neviditelný znak, konkrétně U+200E známý též jako left-to-right mark (ten se používá ke změně směru psaní třeba v arabských textech). Nevíš, jak se ti tam dostal?
Smaž oba okolní znaky a napiš je znovu.
PetrT
Profil *
Chamurappi:
Díky, funguje. Ty hodnoty zadávají uživatelé, dalo by se to nějak ošetřit?

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: