Kun kuljetan tiedostojen nimiä $_GET:llä, miten nimet pitää muotoilla, jotta kaikki erikoismerkitkin toimivat? Olen yrittänyt ajaa tiedostonimen urlencode():n sekä rawurlencode():n läpi, mutta eipä vaan onnistu. Forbiddeniä pukkaa. Erikoismerkittömät tiedostonimet toimivat moitteetta.
erikoismerkit url:ssä
nimimerkki
5676
0Äänestä
Muut lukivat myös
Odottaa vastausta
Näihin keskusteluihin ei ole vielä vastattu. Ole ensimmäinen.
Vastaukset 5
Vanhimmat
Älä kuljeta tiedostojen nimiä URLeissa äläkä käytä erikoismerkkejä tiedostojen nimissä. Jos kuitenkin koet tarvitsevasi erikoismerkkejä, kerro _alkuperäinen_ ongelma (ja mielellään myös esimerkkikoodi, jolla olet sitä yrittänyt ratkaista).
Tarkoituksena olisi siis tehdä vähän apassin omaa hakemistolistausta muistuttava viritelmä, mutta nuo ääkköset (ja muut erikoismerkit) eivät toimi.
Esimerkiksi kun ajan tiedostonimen rawurlencode():n läpi, muuttuu ä-kirjain -> '%E4', ja ei toimi. Apache taas muuntaa ä:n muotoon '%c3%a4', toimii.
jolle voit antaa sen merkistön, jolla erikoismerkit pitää koodata.
recode_string()
Mitä jos GET parametrina pitää kuljettaa merkkijono, joka sisältää erikoismerkit?
esim: search.php?hakusana="ääliö"
OK, äö, jne.. voi vielä korvata html koodeilla, mutta jos merkkijono on utf-8 ja sisältää vaikka kyrilliset merkit?
ÄLÄ käytä kyrillisiä merkkejä sivuilla, kaikki osaavat jo englantia !!!!