2015-08-27 3 views
0

У меня есть этот код, где я пытаюсь перенаправить мобильных пользователей на мобильные оптимизированные страницы и настольных пользователей на страницу рабочего стола.PHP Переадресация мобильных телефонов не работает

<?php if(stristr($_SERVER['HTTP_USER_AGENT'],'iPad')|| 
     stristr($_SERVER['HTTP_USER_AGENT'],'iPhone')|| 
     stristr($_SERVER['HTTP_USER_AGENT'],'iPod')|| 
     stristr($_SERVER['HTTP_USER_AGENT'],'Android')){ ?> 

    mobile-page.com 

<?php } else { ?> 
dekstop-page.com 

<?php } ?> 

Теперь я пытаюсь дальше перенаправляет мобильных Android и Iphone пользователей, делая ELSEIF заявление, но я получаю сообщение об ошибке.

<?php if(stristr($_SERVER['HTTP_USER_AGENT'],'iPad')|| 
     stristr($_SERVER['HTTP_USER_AGENT'],'iPhone')|| 
     stristr($_SERVER['HTTP_USER_AGENT'],'iPod')){ ?> 

    iphone-page.com 

<?php } elseif(stristr($_SERVER['HTTP_USER_AGENT'],'Android')){ ?> 

    android-page.com 

<?php } else { ?> 
dekstop-page.com 

<?php } ?> 

Может ли кто-нибудь помочь мне, где я ошибаюсь?

+0

Используйте заголовок, если вам требуется автоматическое перенаправление. –

+0

Можете ли вы предоставить полученную вами ошибку, чтобы мы могли лучше определить проблему, с которой вы сталкиваетесь? – whyceewhite

ответ

0

Попробуйте это.

<?php 
    if(stristr($_SERVER['HTTP_USER_AGENT'],'iPad')|| 
      stristr($_SERVER['HTTP_USER_AGENT'],'iPhone')|| 
      stristr($_SERVER['HTTP_USER_AGENT'],'iPod')|| 
      stristr($_SERVER['HTTP_USER_AGENT'],'Android')) 
      { 
      header('Location: mobilepage.html') ; //forward to mobile page 
     } else { 
     header('Location: desktoppage.html') ; //forward to desktop page 
     } 
?> 
+0

Но я хочу перенаправить пользователей Andorid на andoridpage.com, пользователи Iphone на iphonepage.com и пользователь ПК на dekstoppage.com –

+0

изменить pagename dude .. Например: 'Location: blablabla.html' –

0
<?php 
$UserInfo = $_SERVER['HTTP_USER_AGENT']; 
if (stristr($UserInfo, 'iPad') || stristr($UserInfo, 'iPhone') || stristr($UserInfo, 'iPod')) { 
    header('Location: iphone-page.com'); //directs to iphone mobile page      
} elseif (stristr($UserInfo, 'Android')) { 
    header('Location: android-page.com'); //directs to mobile page 
} else { 
    header('Location: dekstop-page.com'); //directs to dekstop page 
} 
?> 
0

@whyceewhite @Subin Томас @rahul Это на самом деле работает прекрасно! Я получал синтаксическую ошибку на моем сервере, потому что я забыл одну фигурную скобку в своем коде. Этот код здесь в порядке. Я извиняюсь!

I used <?php else { ?> instead of <?php } else { ?> 
Смежные вопросы