2010-08-12 6 views
0

휴대 전화 용 버전 1 개와 PC 용 버전 1 개를 만들어야합니다. 그래서 다음과 같이 나는 스크립트를 가지고있다 -휴대 기기를 감지하는 스크립트는 무엇입니까

<?php 
if (stristr($ua, "Windows CE") or stristr($ua, "AvantGo") or 
    stristr($ua,"Mazingo") or stristr($ua, "Mobile") or stristr($ua, "T68") or 
    stristr($ua,"Syncalot") or stristr($ua, "Blazer") or 
    stristr($ua,"Mozilla") or stristr($ua,"Firefox")) 
{ 
    $DEVICE_TYPE="MOBILE"; 
} 
if (isset($DEVICE_TYPE) and $DEVICE_TYPE=="MOBILE") 
{ 
    $location='mobile/entry.html'; 
    header ('Location: '.$location); 
    exit; 
} 
else 
{ 
    $location='entry.html'; 
    header ('Location: '.$location); 
    exit; 
} 
?> 

이 스크립트는 내 PC와 함께 잘 작동하지만 모바일에서 내 사이트에 액세스하려고하면 내가 원하는대로, 나는 같은 페이지로 리디렉션 할 수 없습니다.

누구든지 나를 도와 드릴까요?

미리 감사드립니다.

+0

가능한 중복 [모바일 브라우저 기능을 감지하는 방법 (http://stackoverflow.com/questions/3428234/how-to-detect-mobile-browser : 여기 –

+0

Sarfraz에서 @Pekka 대부분의 링크 게시물 불행히도 작동하지 않습니다 – Sotiris

답변

0

최선의 선택을 시도하고 스니핑 사용자 에이전트를 기반으로 리디렉션하지만, 특정 URL에 모바일 컨텐츠를 넣어, 그 옵션을 사용할 수 있도록하지 않습니다 읽을 수 있습니다. 사용자 에이전트 스니핑은 괜찮 았지만 100 % 의존 할 수는 없습니다. 이와 관련하여 PPK's post on javascript detection은 좋은 결과입니다.

그런데 사용자 에이전트 리다이렉션을 할 때 죽은 사람이라면 장치 목록과 사용자 에이전트 문자열을 업데이트 할 수있는 방법이 필요합니다. codeigniter의 user agent class과 같은 것이 더 유용 할 것입니다 장기적으로.

http://code.google.com/p/php-mobile-detect2/

1

는 솔루션입니다 -capability)
+0

잘 작성된 코드, 감사합니다 것 같습니다. 이것을 시도해 볼 것입니다. – manubkk

관련 문제