2014-10-23 3 views
0

다른 브라우저의 URL에서 궁금한 결과가 나타납니다. URL을 다른 크롬

example.com&nam=Oprava%20sk%C3%BA%C5%A1kovej%20p%C3%ADsomky%202012-2013.png 

그리고 에 :

example.com&nam=Oprava%20sku%CC%81s%CC%8Ckovej%20pi%CC%81somky%202012-2013.png 

은 왜이다

나는이 URL은 사파리 해석했다

example.com&nam=Oprava skúškovej písomky 2012-2013.png 

이 URL을했다 일어난? 사파리 링크가 사진과 크롬 링크가 작동하지 않기 때문에 작동합니다.

echo "<br>".var_dump($_GET['nam']); 
echo "<br>".var_dump("Oprava skúškovej písomky 2012-2013.png"); 

결과

string(41) "Oprava skúškovej písomky 2012-2013.png" 
string(44) "Oprava skúškovej písomky 2012-2013.png" 

이러한 문자열은 동일 보이지만, 그들은 다른 : 끝으로

그리고 호기심 직원입니다. 어떻게 이것을 피할 수 있습니까? 두 개의 동일한 문자열이 필요합니다.

+0

문자열 이스케이프 때문입니다. 파일 이름에 영숫자가 아닌 문자를 공백없이 사용하지 않는 것이 좋습니다. – Legionar

+0

동일한 문자열을 이스케이프 처리하는 방법은 있습니까? –

+1

'ú' 등은 UTF-8에서 다른 방식으로 인코딩 될 수 있습니다. (기본적으로 'ú'문자를 직접 또는 단순한 'u'와 분음 기호를 조합하여 사용) _ "두 개의 동일한 문자열이 필요합니다"_ - 값을 미리 URL 인코딩 (UTF-8 인코딩 형식으로) 대신 브라우저에서 처리하도록합니다. – CBroe

답변

1

는 사파리 우리 슬로바키아어 ú%C3%BA로서 부호화된다

example.com & 남 = Oprava % 20sk % C3 % BA % C5 % A1kovej % 20P % C3 % ADsomky % 202012-2013.png

크롬으로 인코딩 된 ´ + u로, 그리고 u + %CC%81, 또한 s + ˇs + %CC%8C이다

example.com 012,= Oprava % 20sku % CC % 81s % CC % 8Ckovej % 20pi % CC % 81somky % 202012-2013.png

하지만 디코딩 된 내용이 같은 문자열 일 때는 중요하지 않습니다. 끝에서 두 번째에

echo "<br>".var_dump($_GET['nam']); 
echo "<br>".var_dump("Oprava skúškovej písomky 2012-2013.png"); 

당신이 (공간)이 있습니다

그리고 당신의 위해서 var_dump의

당신은 다른 문자열을 가지고있다.

+0

Safari 작동 : http://matfyz.mydevelops.com/matfyz.php?cpkr=79c2b46ce2594ecbcb5b73e928345492&adr=/Predmety/Analyza%201&nam=Oprava%20sk%C3%BA%C5%A1kovej%20p%C3%ADsomky%202012-2013 .png & ss = Oprava % 20sk % C3 % BA % C5 % A1kovej % 20p % C3 % ADsomky % 202012-2013.png 크롬 작동하지 않음 : http://matfyz.mydevelops.com/matfyz.php?cpkr=79c2b46ce2594ecbcb5b73e928345492&adr= /INF/1.%20rok/Zima/Analyza&nam=Oprava%20sku%CC%81s%CC%8Ckovej%20pi%CC%81somky%202012-2013.png&ss=Oprava%20sku%CC%81s%CC%8Ckovej%20pi% CC % 81somky % 202012-2013.png 사파리와 같은 이스케이프 문자열을 코딩하기 위해 rawurlencode()를 사용하는 방법이 있습니까? –

+0

당신은 왜 당신의 html 헤더에 이것을 가지고 있습니까? ''? XML이 아닌 ... – Legionar

+0

이것이 문제의 원인이라고 생각하십니까? Ok, 알아낼 수 있습니다. 나는이 헤더없이 시도한다. –