<?php
$iphone = strpos($_SERVER['HTTP_USER_AGENT'],"iPhone");
$android = strpos($_SERVER['HTTP_USER_AGENT'],"Android");
$palmpre = strpos($_SERVER['HTTP_USER_AGENT'],"webOS");
$berry = strpos($_SERVER['HTTP_USER_AGENT'],"BlackBerry");
$ipod = strpos($_SERVER['HTTP_USER_AGENT'],"iPod");
$mobile = strpos($_SERVER['HTTP_USER_AGENT'],"Mobile");
$symb = strpos($_SERVER['HTTP_USER_AGENT'],"Symbian");
$operam = strpos($_SERVER['HTTP_USER_AGENT'],"Opera M");
$htc = strpos($_SERVER['HTTP_USER_AGENT'],"HTC_");
$fennec = strpos($_SERVER['HTTP_USER_AGENT'],"Fennec/");
$winphone = strpos($_SERVER['HTTP_USER_AGENT'],"WindowsPhone");
$wp7 = strpos($_SERVER['HTTP_USER_AGENT'],"WP7");
$wp8 = strpos($_SERVER['HTTP_USER_AGENT'],"WP8");
if ($ipad || $iphone || $android || $palmpre || $ipod || $berry || $mobile || $symb || $operam || $htc || $fennec || $winphone || $wp7 || $wp8 === true) {
header('Location: http://m.medika-med.ru');
}
?>
Тогда используй куки. Что-то я не подумал о незарегистрированных и неавторизованных пользователях)знаю!![]()
ну если записывать по IP, то не факт что на этом устройстве оно не сменится и в следующий раз пользователя скрипт снова не отправит на мобильную версию.
if (isset($_GET['versm'])) {
if ($_GET['versm'] == 'full') {
setcookie('mobile', true, time()+9999999');
header('Location: http://www.domain.ru');
}
}
if (empty($_COOKIE['mobile']) || $_COOKIE['mobile'] == false) {
if ($ipad || $iphone || $ipod || $android || $symb || $operam || $htc || $winphone || $berry === true) {
setcookie('mobile', false, time()+9999999);
header('Location: http://m.domain.ru');
} else {
setcookie('mobile', true, time()+9999999);
header('Location: http://www.domain.ru');
}
}
setcookie('mobile', false, time()+9999999, '/');
Там домены разные.path параметр нужно указывать для корня сайта. А так у тебя кука устанавливается только для той странички на которой она устанавливается.PHP:setcookie('mobile', false, time()+9999999, '/');
Ага, не заметил.Там домены разные.
setcookie('mobile', false, time()+9999999, '/', 'domain.ru');
$iphone = strpos($_SERVER['HTTP_USER_AGENT'],"iPhone");
$ipod = strpos($_SERVER['HTTP_USER_AGENT'],"iPod");
$android = strpos($_SERVER['HTTP_USER_AGENT'],"Android");
$symb = strpos($_SERVER['HTTP_USER_AGENT'],"Symbian");
$operam = strpos($_SERVER['HTTP_USER_AGENT'],"Opera M");
$htc = strpos($_SERVER['HTTP_USER_AGENT'],"HTC_");
$winphone = strpos($_SERVER['HTTP_USER_AGENT'],"WindowsPhone");
$berry = strpos($_SERVER['HTTP_USER_AGENT'],"BlackBerry");
if (empty($_COOKIE['mobile']) || $_COOKIE['mobile'] == false) {
if ($iphone || $ipod || $android || $symb || $operam || $htc || $winphone || $berry === true) {
setcookie('mobile', false, time()+9999999);
header('Location: http://m.domain.ru');
} else {
setcookie('mobile', true, time()+9999999);
header('Location: http://www.domain.ru');
}
}
if (isset($_GET['versm'])) {
if ($_GET['versm'] == 'full') {
setcookie('mobile', true, time()+9999999');
header('Location: http://www.domain.ru');
}
}
$berry === true
Из-за лишнего апострофа видно, что окраска стала неверной.PHP:setcookie('mobile', true, time()+9999999'); header('Location: http://www.domain.ru');
djkoff
Всегда будет давать false, хоть это и не критично. И еще устанавливая в куку значение false ты ее удаляешь.PHP:$berry === true
var_dump(1 || 0 === true);