Pull to refresh

Comments 33

он там и был :) ввело в заблуждение то, что тег парный, поэтому хотел скрыть начало и конец. оказалось что тогда кат срывается совсем :)
Эх, почему так всегда, я вот только позавчера с подобной проблемой мучался. Все решил вроде. А сейчас вот такая статья. Но все же спасибо. Добавлю в избранное, тут параметров больше, чем у моей функции.
меня и в избранное? ой… :)
Хорошие скрипты, которые могут помочь в работе, я всегда добавляю в избранное. Этот именно такой. Еще раз спасибо)
В целом наличие сторонних разработок, повторяющих весь функционал get_browser() — полезная вещь :) Главное не забывать, что это исключительно свойства браузера, и, скажем, $browserInfo->JavaScript == 1 ещё не гарантирует, что он включён.
таки да, надо бы дообьяснить
было бы хорошо иметь нормальный способ получить разрешение монитора и его DPI и размер окна браузера пока те что я знаю уж очень кривые js
так такие вещи кроме как клиент-сайд скриптингом и не получишь…
скрипт к сожалению не идеален. Если зайти из под оперы, которая маскируется под лису, т.е. Mozilla/5.0 (Windows NT 5.1; U; ru; rv:1.8.1) Gecko/20061208 Firefox/2.0.0 Opera 9.52 многие параметры начинают бажить.
Для исправления всего-то надо чекать сначала, является ли оперой или нет
Есди да, определяем версию. Если нет, чекаем на соответсвие другим браузерам.
Чтоб в поисковиках показываться… а за клоакинг в бан не попадёте?
при чем тут клоакинг? я ж не отсылаю поисковик на спец-страничку. Наоборот, я не даю ему попасть в тупик и вывожу на сайт. Это как nofollow для гиперссылки.
В избранное, понадобится)) Спс))
всегда использую javascript для узнавания такого рода информации :)
Оригинально, спс, побольше бы узнать о таких плюшках…
Хороший вопрос поднят в начале топика «о чем это?», но главный вопрос «зачем это?» совсем не раскрыт. Получилось что-то вроде игрушки — поиграться и выбросить. Все равно будут пользоваться javascript…
Вы правы, это скорее для очень специфичных случаев, раньше это было очень необходимо, до появления HTML 2.0 скажем, сейчас редко используется сервер — сайд определение браузера для фиксов верстки. В тоже время отлично подойдет для скрипта статистики. Функция get_browser в php появилась в 2000ом году, это о чем то говорит :)

Хоть люди из Mozilla и утверждают, что этот документ только история, все равно полезно прочитать — The Ultimate JavaScript Client Sniffer и Browser Detection and Cross Browser Support
Скрипт статистики средствами PHP — довольно спорная идея. Зачем изобретать очередной велосипед, если существует достаточно решений на клиентской части?
цитирование мануала, клёво :-)
ps: пхп знает о клиенте не больше апача, перла, и прочих руби и питонов
так что тему можно переименовать, а всё изложение свести к тому, что вся инфа недостоверна и передаётся в заголовках
В одном моем проекте ребром стал вопрос о необходимости узнать браузер юзера с точностью до ста процентов, долго собирал заголовки браузеров и нашел некоторую закономерность. Думаю, сейчас это уже в прошлом, но два года назад именно порядок заголовков помог задетектить браузер.
100% точность невозможна
решения у задачи не существует
причина: rfc http
Стопроцентной вероятности конечно нет. А указывать причиной документ, определяющий стандарты сервера и браузера — неоправданный бред. Можно поменять строку с юзер агентом, но очередность тех же заголовков RFC не определяет.
указанный документ определяет не стандарты сервера и браузера, а стандарты протокола их общения. и как раз в этом документе описано, как может (не «должен») идентифицировать себя браузер.
так что с бредом вы, конечно же, поторопились.
перечитайте, пожалуйста, мой пост ещё раз. я не утверждал, что очерёдность заголовков описывается данным рфц, я сказал, что согласно рфц нет ни одного достоверного способа решения вашей задачи.
пхп не знает. знает статистика. а достоверность дело относительное. на User-Agent полагаться нельзя ни на клиенте ни на сервере. Но можно делать правильные выводы. Если опера или файрфокс сменили юзер-агент, то это их проблемы уже, что они получат :)
> //вероятность выполнение участка кода стремится к нулю поэтому пишем сюда

Я бы тогда поменял местами два куска кода:

if(! ini_get('browscap'))
{// разбираемся с браузером}
else
{// посылаем начальство}

Хотя в данном случае это не особо принципиально, просто привычка пихать вперед то, что чаще сработает. Если будет много if/elseif, то производительность чуть получше, поскольку другие условия уже проверяться не будут.
Нанотехнология оптимизации? :)
UFO just landed and posted this here
UFO just landed and posted this here
Не совсем понял смысла, но вообще, не каждый раз нужен выход из метода. Я привел пример оптимизации представленного кода, а не общего вида.
Спасибо за статью, спасло от изобретения очередного велосипеда.

Только «предЫстория». =)
А есть ли таки способ узнать про включенность javaScript на уровне PHP? Очень долго искал попытку решить это на уровне PHP, но там и не смог
если очень захотеть, можно в космос полететь :) не могу представить зачем это надо, но если надо — например при заходе на сайт запрос аяксом к скрипту пхп, который установит в сессию маркер включенности явы. если ява отключена то и маркер не установится :)аналогично с куки — установить и попытаться считать… но данные будут доступны только при заходе на следующую страницу :) можно при первом заходе на сайт делать редирект на скрипт, который это все установит а потом вызовет запрашиваемую страницу. Моя больная фантазия пока исчерпалась :)
Этот вариант рассматривался, но был откинут именно из-за
> данные будут доступны только при заходе на следующую страницу
Sign up to leave a comment.

Articles