Вопрос

я использую get_browser() функция в попытке предупредить людей о том, что их браузер не поддерживает Javascript.На самом деле я использую его, чтобы сообщить им, что они могут использовать определенные части веб-приложения, которое я создаю.Я решил правильно использовать Javascript, потому что устал слушать разработчиков, которые боятся его использовать, и я увидел в этом языке большой потенциал.Я отвлекся, вот в чем ошибка.

Директива browscap ini не установлена

Теперь я предполагаю, что это означает, что мне нужно что-то установить в php.ini.Может ли кто-нибудь дать мне какое-то направление по этому поводу?

Это было полезно?

Решение

Я не думаю, что это «лучшее» решение для определения того, поддерживает ли браузер то, что вам нужно для вашего веб-сайта:

  • во-первых, браузеры могут лгать — они могут отправлять все, что захотят, как User-Agent
    • И даже если данная версия поддержки должна поддерживать то, что вам нужно, Javascript все равно можно отключить.
  • во-вторых, есть более «правильный» способ определить, что браузер может делать, а что нет, когда дело касается Javascript.

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


Тем не менее, чтобы ответить на ваш вопрос о browscap :в нижней части страницы руководства есть примечание для get_browser это говорит (цитирую) :

Примечание: Чтобы это сработало, ваш browscap Настройка конфигурации в php.ini должна указывать на правильное местоположение browscap.iniфайл в вашей системе. browscap.ini не связан с PHP, но вы можете найти актуальную » php_browscap.ini файл здесь.
Пока browscap.ini Содержит информацию во многих браузерах, она опирается на обновления пользователей, чтобы сохранить текущий ток базы данных.Формат файла довольно эксплуатационный.

Итак, вам предстоит:

  • загрузите файл браузера,
  • и установите browscap директива в вашем php.ini файл, поэтому он указывает на загруженный вами файл.

Другие советы

Я знаю, что эта тема старая, но вы можете использовать что-то вроде:

<noscript>JavaScript must be enabled</noscript>

для отображения, если JavaScript не включен.

Вы можете проверить браузер, используя класс Browser, загрузив его с сайта. Гитхаб

Конфигурация

      include(/your-path/Browser.php);
$browser = new Browser();
    if( $browser->getBrowser() == Browser::BROWSER_IE && $browser->getVersion() >= 8 ) 
        {
            echo "Your browser is Internet explorer version 8";                                                                                                                                    
    }

В PHP есть ошибка, которая также может привести к этой ошибке, когда реальная проблема заключается в том, что веб-сервер не может прочитать файл браузера (например, если он принадлежит пользователю root, а не www-data).Видеть https://bugs.php.net/bug.php?id=74501

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top