2010-02-26 3 views
0

사용자로부터 파일을 가져 와서 서버에 업로드하는 스크립트를 만들어야합니다. 이미이 작업을 수행했으며 첫 번째 시도에서 올바른 MIME 형식이 업로드되고 있는지 확인하기 위해 일부 확인 작업을 수행했습니다. 오늘 저는 브라우저가 MIME 형식을 다르게 해석한다는 것을 알게되었습니다. 이것은 내가 결국 체크 가치가 없다고 생각하게 만듭니다. 마지막으로 사용자가 원하는 것은 브라우저가 내 광산과 동일한 방식으로 마임 유형을 처리하지 않기 때문에 파일을 업로드 할 수 없다고 말해주는 것입니다.파일 배열 및 마임 유형에 관한 질문

누군가가 제안 할 수있는 것. MIME 형식을 무시하고 확장명을 확인해야합니까, 아니면이 작업을 수행하는 더 좋은 방법이 있습니까? 나는 이것을위한 CURL 옵션이 있음을 알고 있지만, 나는이 상황에 대해 과잉이라고 생각한다.

답변

0

FileInfo을 살펴보십시오. 검증을 위해 사용자/브라우저가 제공 한 모든 데이터에 의존하지 마십시오.

+0

감사합니다. 문서는 어디에 있습니까? 거기에 사용자 기여 노트 만 있습니다. – Jim

+0

브라우저에서 아무것도 신뢰하지 않는다는 것에 동의합니다. – Jim

+0

@ 짐 : 구체적으로 말하자면, finfo_file을 원할 것입니다. http://www.php.net/manual/en/function.finfo-file.php – jasonbar

0

제외 필터를 사용할 것입니다. 지원되는 확장자 (jpeg, jpg, gif, png, txt, doc, xls 등)를 설정하고 이미지 파일이 실제로 getimagesize() 인 이미지인지 테스트하십시오.

다른 접근 방식입니다. 모든 파일 형식을 업로드하고 싶지 않기 때문에 약간 더 좋습니다.

이제 생각해 보면, 둘 다 구현할 수 있습니다.

행운을 빈다.