2013-07-31 2 views
1

У меня есть полный сайт, который был в OS-commerce и мобильном сайте, в основном PHP (codeignitor), а также полная версия и мобильная версия в поддомене.Переадресация на полный сайт на мобильный сайт с использованием сеанса

e.g полный сайт: www.example.com и домен мобильного домена m.example.com. когда пользователь открывает полный домен сайта в мобильном телефоне, тогда веб-сайт перенаправляет надлежащий мобильный домен, но если мобильный пользователь хочет просмотреть полный сайт, тогда пользователь может просматривать полный сайт на мобильном телефоне.

Я использовал это для завершения перенаправления http://code.google.com/p/php-mobile-detect/, но он не перенаправляется на весь сайт или на мобильный сайт с использованием сеанса. Я знаю, что мне нужно использовать PHP SESSIONS и REQUEST, чтобы заставить это работать, но я не уверен, как их использовать в этом экземпляре, поэтому не могли бы вы предложить, как решить эту проблему перенаправления с помощью сеанса?

Вот мой код:

session_start(); 

    include('includes/Mobile_Detect.php'); 
    $detect = new Mobile_Detect; 

if(isset($_REQUEST['fullsite']) && $_REQUEST['fullsite'] == 'yes') 
{//check if fullsite view request from mobile or website? 

    $_SESSION['fullsite']="yes"; 

    if($detect->isMobile()) { 
       $_SESSION['website']="mobile"; 
    } 
    else{ 
     $_SESSION['website']="computer"; 
    } 

    $deviceType = header('Location: https://www.example.com/'); 
    } 
    else 
    { 
    if($_SESSION['website'] =="mobile" && $_SESSION['fullsite'] !="yes") 
    { 
     if($detect->isTablet()) 
     { 
      $deviceType = 'tablet'; 
     } 
     else 
     { 
      $deviceType = 'phone'; 
     } 

     $deviceType = header('Location: https://m.example.com/'); 
    } 
    elseif($_SESSION['website'] =="computer" && $_SESSION['fullsite'] =="yes") 
    { 
     $deviceType = 'computer'; 
     $deviceType = header('Location: https://www.example.com/'); 
    } 
    else{ 
     $deviceType = 'computer'; 
    } 

    $scriptVersion = $detect->getScriptVersion(); 
    session_destroy(); 
    } 

ответ

0

Из того, что я мог бы получить от GitHub страницы вы должны быть в состоянии заставить его работать так:

index.php

session_start(); 

if ($_GET['fullscreen'] == 'yes') { 
    $_SESSION['fullscreen'] = 1; 
} else if ($_GET['fullscreen'] == 'no') { 
    $_SESSION['fullscreen'] = 0; 
} 

if (false == isset($_SESSION['fullscreen']) && ($_SESSION['fullscreen'] == 0)) { 
    // If session['fullscreen'] has not been set (maybe first visit 
    // or the user does not what in fullscree 
    // check the device and do redirect 
    require_once 'Mobile_Detect.php'; 
    $detect = new Mobile_Detect(); 


    // Any mobile device (phones or tablets). 
    if ($detect->isMobile()) { 

    } 
    ... 
} 

// Other code here 

При посещении из мобильный, если пользователь хочет полную версию, предоставить привязку к URL-адресу с параметром GET fullscreen=yes (http://example.com?fullscreen=yes) Если на полном сайте и обнаружить мобильный телефон (не включен в код выше), вы можете указать ссылку на мобильную версию с fullscreen=no

Смежные вопросы