2012-10-23 2 views
0

그래서 분명히 iPad는 브라우저를 통해 서버에 이미지를 업로드하는 것을 허용하지 않습니다 ... 그래서 사용자가 iPad를 사용하고 있음을 감지 할 수 있어야합니다. 그들이 파일을 "탐색"할 수있는 능력.파일 업로드를 막기 위해 iPad의 PHP 감지

PHP를 통해 특정 상황에 대한 최선의 방법이 있습니까?

+1

는 아이폰 OS 나 브라우저가 처음부터 파일 업로드 폼 요소를 표시하지 기대, 아이폰 OS 6 – Jonathan

+0

이후 이미지 업로드를 지원합니다. 또는 그들을 unclickable 렌더링하십시오. – Sven

+1

전적으로 동의합니다, 스벤 ...하지만 여전히 나타납니다. – dcolumbus

답변

0

당신은 사용자 에이전트를 확인할 수 있습니다. 아이 패드가 파일 업로드를 지원하지 않는 경우

$isiPad = (bool) strpos($_SERVER['HTTP_USER_AGENT'],'iPad'); 
+0

요즘 사용자 에이전트는 얼마나 정확합니까? – dcolumbus

+1

그것은 부적절합니다. 그것은 iPad입니다. 평범한 사용자는 iPad에서 사용자 에이전트를 변경할 수 없습니다. 그러나 iOS 6 이후 파일 업로드가 지원되므로 위의 해결책은 잘못되었습니다. –

+0

예.하지만 iOS6이없는 사람이 많습니다. Chrome의 정신력입니다. 우리는 여전히 IE를 지원하는 세계에 살고 있습니다. – dcolumbus

0

내가 직접 무시하지만, 실제로 원한다면 get_browser()을 사용하여 UserAgent를 확인하십시오. browse.cap 파일이 설치되어 있어야하고 PHP가이를 가리 키도록주의하십시오. 자세한 내용은 docs를 참조하십시오.

또는 수동으로 검사하십시오 ($_SERVER['HTTP_USER_AGENT']). get_browser()에 대한

문서는 : http://php.net/manual/en/function.get-browser.php

+0

get_browser()는 향상된 사용자 에이전트 스니핑입니다.이 자체는 잘못되었습니다. – Sven

+0

나는 간단한 작업을 위해 사용 도구를 사용하는 데있어서 잘못된 점을 보지 않았으며, "잘못된"주장을 뒷받침하는 어떠한 주장도 보이지 않습니다. OP의 경우 더 복잡한 것을 작성하는 것은 시간 낭비 일 것입니다. –

+0

get_browser()는 처음부터 설정하기에는 너무 복잡합니다. "현재 browsecap.ini 파일 가져 오기"가 첫 번째 장애물입니다. PHP 페이지에 언급 된 링크는 "이 프로젝트는 연말에 끝날 것"이라고 말했다. (2012). 두 번째는 설치하는 것입니다. 그것은 php.ini 또는 httpd.conf에서 수행되어야합니다 - no .htaccess 마법. 셋째 : 수집 된 정보가 대부분 잘못되었습니다. 서버 측 클라이언트 검색이 작동하지 않습니다. – Sven

관련 문제