/
Forside
/
Teknologi
/
Udvikling
/
PHP
/
Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn
*
Kodeord
*
Husk mig
Brugerservice
Kom godt i gang
Bliv medlem
Seneste indlæg
Find en bruger
Stil et spørgsmål
Skriv et tip
Fortæl en ven
Pointsystemet
Kontakt Kandu.dk
Emnevisning
Kategorier
Alfabetisk
Karriere
Interesser
Teknologi
Reklame
Top 10 brugere
PHP
#
Navn
Point
1
rfh
3959
2
natmaden
3372
3
poul_from
3310
4
funbreak
2700
5
stone47
2230
6
Jin2k
1960
7
Angband
1743
8
Bjerner
1249
9
refi
1185
10
Interkril..
1146
URL decoding - encodeURIComponent
Fra :
A B C
Dato :
13-09-06 08:38
Jeg har problemer med at få PHP til at decode min query string
korrekt.
I Javascript bruger jeg for eksempel dette:
encodeURIComponent("¤ é"))
Det resulterer i:
%C2%A4%20%20%20%20%C3%A9
Når PHP så decoder URLen bliver det til dette i stedet for:
¤ é
Hvorfor i alverden det? Og hvordan løser jeg det?
Umiddelbart ville jeg sige at encodeURIComponent() gør det forker -
fordi escape() gør det nemlig korrekt - men alle steder på nettet
læser jeg at man hellere skal bruge encodeURIComponent() fordi den kan
håndtere unicode og er nyere osv. Så jeg er helt forvirret nu!
Jesper Brunholm (
13-09-2006
)
Kommentar
Fra :
Jesper Brunholm
Dato :
13-09-06 09:01
A B C skrev:
> Jeg har problemer med at få PHP til at decode min query string
> korrekt.
>
> I Javascript bruger jeg for eksempel dette:
>
> encodeURIComponent("¤ é"))
>
> Det resulterer i:
>
> %C2%A4%20%20%20%20%C3%A9
>
> Når PHP så decoder URLen bliver det til dette i stedet for:
>
> ¤ é
>
> Hvorfor i alverden det? Og hvordan løser jeg det?
Det ligner at der er et sprog og tegnsæt, i spil når du laver encodeURI
og et andet når du laver decode. Det kunne fx være UTF8 og ISO 8859-1
charsettene. Prøv om du kan kontrollere en eller begge transformationer
hvad charset angår...
mvh
Jesper Brunholm
A B C (
13-09-2006
)
Kommentar
Fra :
A B C
Dato :
13-09-06 11:25
>> Jeg har problemer med at få PHP til at decode min query string
>> korrekt.
>>
>> I Javascript bruger jeg for eksempel dette:
>>
>> encodeURIComponent("¤ é"))
>>
>> Det resulterer i:
>>
>> %C2%A4%20%20%20%20%C3%A9
>>
>> Når PHP så decoder URLen bliver det til dette i stedet for:
>>
>> ¤ é
>>
>> Hvorfor i alverden det? Og hvordan løser jeg det?
>
>Det ligner at der er et sprog og tegnsæt, i spil når du laver encodeURI
>og et andet når du laver decode. Det kunne fx være UTF8 og ISO 8859-1
>charsettene. Prøv om du kan kontrollere en eller begge transformationer
>hvad charset angår...
Tjaaaa, når jeg kører en utf8_decode() på værdien i PHP (dvs. f.eks.
ovenstående "mærkelige" output) får jeg faktisk det rigtige resultat.
Så det ser ud til at jeg bare skal køre alle værdier fra $_GET igennem
denne funktion. Spørgsmålet er så bare om det er en solid løsning?!
Det kræver jo at input ALTID skal komme i UTF-8....
Søg
Alle emner
Teknologi
Udvikling
PHP
Indstillinger
Spørgsmål
Tips
Usenet
Reklame
Statistik
Spørgsmål :
177558
Tips :
31968
Nyheder :
719565
Indlæg :
6408925
Brugere :
218888
Månedens bedste
Årets bedste
Sidste års bedste
Copyright © 2000-2024 kandu.dk. Alle rettigheder forbeholdes.