2013-01-19 2 views
0

Mobile_Detect.php를 사용하여 모바일 검색을 구축 했으므로 훌륭하게 작동합니다. 이제 사용자가 모바일 사이트에 머물고 싶지 않으면 "Desktop-Version"을 클릭하고 $_SESSION['mobile'] = 'off'을 설정하는 'mobile_off.php'를 통해 메인 페이지로 돌아갑니다.

주요 사이트는 다음과 같은 코드를 실행합니다 :

<?php 
    session_start(); 
    // Did the User come back from mobile.php? 
    if ($_SESSION['mobile'] != 'off') { 
    include 'Mobile_Detect/Mobile_Detect.php'; 
    $detect = new Mobile_Detect(); 
    // Smartphone? 
    if ($detect->isMobile() && !$detect->isTablet()) { 
     // Redirection --> echo 'JS' 
     echo "<script>window.location='mobile.php'</script>"; 
    } 
    } 
?> 

문제는 if ($_SESSION['mobile'] != 'off') 무시하거나 잘못되는 것 같다. 우리 아이폰은 항상 나를 곧바로 'mobile.php'로 보냅니다.

아무도 도와 줄 수 있습니까?

는 아마도 내가 'mobile_off.php'에서 당신에게 코드를 표시해야합니다 :

<?php 
    session_start(); 
    $_SESSION['mobile'] = 'off'; 
?> 
+0

가! == 대신 사용해보십시오 세션 변수의 값을 확인 이후 코드

if(isset($_SESSION['mobile']) 

시도 설정할 것인지 아닌지 검사 용 가! = –

+0

은 $ _SESSION [ '모바일'] 메아리 인쇄 내용을 확인하십시오. –

+0

! ==는 동일한 동작을 보여줍니다. $ _SESSION [ '모바일']은 아무것도 표시하지 않습니다. –

답변

1

당신은 첫 번째 세션 변수의 값을 확인하기 전에 세션 변수가 존재 여부를 확인해야합니다. 세션 변수

관련 문제