imho.ws |
![]() |
![]() |
|
Сообщения:
Перейти к новому /
Последнее
|
Опции темы |
![]() |
# 1 |
Guest
Сообщения: n/a
|
![]()
Нужно определить версию браузера у посетителя и перенаправить его на соответствующую страницу. Т.е. сначала определяем тип, потом версию, и в зависимости от типа и версии перенаправляем на нужную страницу.
Вот код который определяет тип и версию браузера. Код:
<? function user_browser($agent) { preg_match("/(MSIE|Opera|Firefox|Chrome|Version|Opera Mini|Netscape|Konqueror|SeaMonkey|Camino|Minefield|Iceweasel|K-Meleon|Maxthon)(?:\/| )([0-9.]+)/", $agent, $browser_info); // регулярное выражение, которое позволяет отпределить 90% браузеров list(,$browser,$version) = $browser_info; // получаем данные из массива в переменную if (preg_match("/Opera ([0-9.]+)/i", $agent, $opera)) return 'Opera '.$opera[1]; // определение _очень_старых_ версий Оперы (до 8.50), при желании можно убрать if ($browser == 'MSIE') { // если браузер определён как IE preg_match("/(Maxthon|Avant Browser|MyIE2)/i", $agent, $ie); // проверяем, не разработка ли это на основе IE if ($ie) return $ie[1].' based on IE '.$version; // если да, то возвращаем сообщение об этом return 'IE '.$version; // иначе просто возвращаем IE и номер версии } if ($browser == 'Firefox') { // если браузер определён как Firefox preg_match("/(Flock|Navigator|Epiphany)\/([0-9.]+)/", $agent, $ff); // проверяем, не разработка ли это на основе Firefox if ($ff) return $ff[1].' '.$ff[2]; // если да, то выводим номер и версию } if ($browser == 'Opera' && $version == '9.80') return 'Opera '.substr($agent,-5); // если браузер определён как Opera 9.80, берём версию Оперы из конца строки if ($browser == 'Version') return 'Safari '.$version; // определяем Сафари if (!$browser && strpos($agent, 'Gecko')) return 'Browser based on Gecko'; // для неопознанных браузеров проверяем, если они на движке Gecko, и возращаем сообщение об этом return $browser.' '.$version; // для всех остальных возвращаем браузер и версию } echo user_browser($_SERVER['HTTP_USER_AGENT']); ?> |
![]() |
# 2 |
::VIP::
Регистрация: 09.09.2002
Адрес: Kiev
Пол: Male
Сообщения: 1 150
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
http://ru-info.net/index.php?page=post&id=2
обрати внимание: "учтите, что заголовки следует передавать до какого-либо вывода текста в браузер" т.е., если у тебя хотя бы пробел между РНР-тэгами окажется - уже работать не будет
__________________
Great minds discuss ideas. Average minds discuss events. Small minds discuss people. |
![]() |
![]() |
# 4 |
Full Member
Регистрация: 20.01.2004
Адрес: Таллинн
Пол: Male
Сообщения: 623
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Заместо
echo user_browser($_SERVER['HTTP_USER_AGENT']); надо сделать примерно так: $browser = user_browser($_SERVER['HTTP_USER_AGENT']); И дальше писать свою логику if( 'Opera 9.80' == $browser ){ // здесь код для перехода на другую страницу } |
![]() |
![]() |
# 6 |
::VIP::
Регистрация: 09.09.2002
Адрес: Kiev
Пол: Male
Сообщения: 1 150
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
ты бы решение привел
![]() нет ничего хуже, чем гуглишь проблему, находишь форум с таким же вопросом, читаешь... а в конце "Problem solved, thanks to all" убить хочется ![]()
__________________
Great minds discuss ideas. Average minds discuss events. Small minds discuss people. |
![]() |
![]() |
# 7 |
Guest
Сообщения: n/a
|
![]()
Вот ссылка на скачивание
Вложения почему-то не грузятся( Да и копеечку хоть заработаю) Кто может помогите с новым кодом http://imho.ws/showthread.php?p=1771705#post1771705 |