Internet Explorer. Не определяется тип браузера
Primary tabs
Пример взят из книги С.Хольцнера "PHP в примерах" (стр.183-185) в рамках учебного курса PHP с нуля.
С помощью переменной
$_SERVER ["HTTP_USER_AGENT"]
не распознаётся Internet Explorer. Всегда выводится сообщение: "Вы используете НЕ IntExplorer". В чём ошибка?
HTML-форма:
<!DOCTYPE html> <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <title> Экспериментальный Web </title> </head> <body> <form method="post" action="4_phpBrowser.php"> <b> Определить тип браузера </b><br><br> <input type="submit" value="ok"> </form><br><br> </body> </html>
Скрипт-обработчик:
<!DOCTYPE html> <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <title> Определение типа браузера </title> </head> <body> <?php if (strpos($_SERVER["HTTP_USER_AGENT"], "MSIE")) { echo "<marquee><h1> Вы используете Internet Explorer </h1></marquee>"; } else { echo "<center><h1> Вы используете не Internet Explorer </h1></center>"; } ?> </body> </html>
- Log in to post comments
- 3679 reads
vedro-compota
Thu, 05/04/2017 - 12:19
Permalink
времена меняются ;)
Что делать
В принципе объяснение проблемы дано здесь: https://habrahabr.ru/sandbox/67192/
А конкретно нас интересует вот это:
Таким образом надо просто искать подстроку Trident (типа "трезубец") -- а-ля:
Также отметим, что экплорер стал "маскироваться" как файрфокс, предпочитая чтобы его определяли как gecko совместимый браузер,
а Gecko -- это движок рисования страниц -- сердце браузера firefox.
Когда началась проблема
В статье написано, что :
--то есть в 10-ой версии IE (Internet Explorer) в юзер-агент строке ещё
была подстрока "MSIE", а в IE11 её не было.
Также нам любезно сообщают, что версия браузера теперь идёт после подстроки rv:
Такие дела)
_____________
матфак вгу и остальная классика =)