Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Закрытая темаСоздание новой темы Создание опроса
> включен ли javascript, javascript и php 
V
    Опции темы
alexey___
Дата 27.7.2008, 21:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 89
Регистрация: 12.3.2007
Где: Казахстан

Репутация: 1
Всего: 1



что косается моих знаний, то они действительно нуждаются в улучшении - всего пару недель за php.

у меня вопрос! 
в интернете нашел, что при помощи функции get_browser() (нужно ещё правильно подключить файл browscap.ini) можно получить информацию и броузере клиента, также и том подключен ли javascript в броузере или нет.

правильно ли я понял действии этой функции? т.е для чего это всё используется?
как правильно подключить browscap.ini? 
PM MAIL   Вверх
Feldmarschall
Дата 27.7.2008, 22:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


Профиль
Группа: Участник
Сообщений: 2641
Регистрация: 11.12.2007

Репутация: 22
Всего: 32



Нельзя с её помощью получить такую информацию.
Что тебе уже несколько раз объяснили, и ты даже поблагодарил за объяснения. 

Это сообщение отредактировал(а) Feldmarschall - 27.7.2008, 23:00
PM   Вверх
elkeeper
Дата 28.7.2008, 20:06 (ссылка)    | (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 28.7.2008

Репутация: 1
Всего: 1



Цитата(alexey___ @ 27.7.2008,  21:40)
что косается моих знаний, то они действительно нуждаются в улучшении - всего пару недель за php.

у меня вопрос! 
в интернете нашел, что при помощи функции get_browser() (нужно ещё правильно подключить файл browscap.ini) можно получить информацию и броузере клиента, также и том подключен ли javascript в броузере или нет.

правильно ли я понял действии этой функции? т.е для чего это всё используется?
как правильно подключить browscap.ini?

Никого не слушай - функция правильная. То, что тебе тут несут (по другому не назвать), что мол нельзя пхп определить параметры браузера т.к. пхп - на сервере, а браузер - на клиенте - это полный бред и пляски с бубном. иди на http://ru2.php.net/manual/ru/function.get-browser.php - там по-компетентнее народ сидит. Настройка browscap.ini необходима, что бы вся эта канетель работала быстрее (здесь, видимо, имеется в виду настройка кэширования сего файла т.к. при вызове get_browser() она постоянно пробегает весь этот файл, выгружая его себе)

Для "профессионалов - программистов", которые тут постили про невозможность определения параметров браузера: По-мимо настроек сервера, переменных и пр. во все ваши пхп скрипты передаются переменные окружения (есть такой зверь - представляете!?), в которых есть куча настроек текущих параметров работы php (начиная со страниц, с которых пришел пользователь и заканчивая настройками Apache (или, в общем, веб-сервера)). И что самое интересное, в эти же переменные окружения передаются и параметры браузера. А вы думали клиент только получает от сервера? Нет, не только. И мало того - передаёт уйму информации о себе. (Источник - phpinfo();)

PS
Всё работает нормально и без настройки browscap.ini

PPS
Ради интереса - выгрузка сей функции
Исходник:
<?php
echo $_SERVER['HTTP_USER_AGENT'] . "\n\n";

$browser = get_browser(null, true);
print_r($browser);
?>

Результатом выполнения будет что-то подобное:

Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7) Gecko/20040803 Firefox/0.9.3

Array
(
    [browser_name_regex] => ^mozilla/5\.0 (windows; .; windows nt 5\.1; .*rv:.*) gecko/.* firefox/0\.9.*$
    [browser_name_pattern] => Mozilla/5.0 (Windows; ?; Windows NT 5.1; *rv:*) Gecko/* Firefox/0.9*
    [parent] => Firefox 0.9
    [platform] => WinXP
    [browser] => Firefox
    [version] => 0.9
    [majorver] => 0
    [minorver] => 9
    [css] => 2
    [frames] => 1
    [iframes] => 1
    [tables] => 1
    [cookies] => 1
    [backgroundsounds] =>
    [vbscript] =>
    [javascript] => 1
    [javaapplets] => 1
    [activexcontrols] =>
    [cdf] =>
    [aol] =>
    [beta] => 1
    [win16] =>
    [crawler] =>
    [stripper] =>
    [wap] =>
    [netclr] =>
)

Думаю, объяснять, что к чему, не надо...)

PPPS
Совет на будущее (псевдо-программистам) - прежде, чем с пеной у рта что-то доказывать, не поленитесь выяснить, не является ли это полным бредом.
    

Это сообщение отредактировал(а) elkeeper - 28.7.2008, 20:18
PM MAIL   Вверх
skyboy
Дата 28.7.2008, 20:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 75
Всего: 260



elkeeper, и как get_browser() вернет информацию о том, включен ли javascript на стороне клиента?
до кучи: вот request headers, который мой mozilla firefox отправляет для получения одной из картинок при работе с этой конкретной страницей(дамп получен при помощи полезного во многих отношениях firebug):
Код

Host    nbimg.dt00.net
User-Agent    Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.1) Gecko/2008070208 Firefox/3.0.1
Accept    image/png,image/*;q=0.8,*/*;q=0.5
Accept-Language    [B][/B]en-us,en;q=0.5
Accept-Encoding    gzip,deflate
Accept-Charset    ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive    [B][/B]300
Connection    keep-alive
Referer    http://forum.vingrad.ru/forum/topic-222194/unread-1.html

найди здесь "javascript: yes" или что-то аналогичное(сейчас я абсолютно умалкиваю о том, что всякие анонимайзерные плагины под разные браузеры искажают или вообще подавляют user-agent заголовки).
снизойди. пожалуйста, очень тебя прошу.

Добавлено через 2 минуты и 10 секунд
мысль мелкнула: а не путаешь ли ты, elkeeper, состояние javascript(включен/выключен - например, плагином "no script" или через настройки) и поддержку javascript(как, например, lynx не поддерживает или консольный terminal)?

Добавлено через 3 минуты и 11 секунд
Цитата(elkeeper @  28.7.2008,  19:06 Найти цитируемый пост)
во все ваши пхп скрипты передаются переменные окружения

правда?! 0_о

Добавлено через 6 минут и 33 секунды
alexey___, смотри, не ведись на эту провокацию. если не веришь нам, не верь ему - проверь сам и убедись, что со включенным javascript и выключенным возвращает "волшебная" функция get_browser()
и поверь(пока - на слово), что клиент далеко не всегда отдает в заголовках свой user-agent. и далеко не всегда в нем - корректная информация. и уж совсем нету в тех заголовках про состояние javascript'a и про установленные плагины/подержку activeX. совсем.

Добавлено через 8 минут и 24 секунды
Цитата(elkeeper @  28.7.2008,  19:06 Найти цитируемый пост)
по-компетентнее

дефис не нужен.
PM MAIL   Вверх
alexey___
Дата 28.7.2008, 21:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 89
Регистрация: 12.3.2007
Где: Казахстан

Репутация: 1
Всего: 1



ALL, интересная тема - неправда ли!!!???

проверил работу get_browser()
При включенном или выключенном javascript в броузере при проверке - всегда результат один единичка.


Код

<?php
        echo $_SERVER['HTTP_USER_AGENT'] . "\n\n";

        $browser = get_browser(null, true);
        echo $browser;                          //вот здесь постоянно выходит одно и тоже значение - 1, с вкл и выкл javascript
?>
 

хотя в различных источниках советуют использовать  get_browser, для получения информации о состоянии текущего броузера. НО ничего не выходит

PM MAIL   Вверх
sTa1kEr
Дата 28.7.2008, 21:35 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


9/10 программиста
***


Профиль
Группа: Завсегдатай
Сообщений: 1553
Регистрация: 21.2.2007

Репутация: 56
Всего: 146



Цитата(alexey___ @  28.7.2008,  22:12 Найти цитируемый пост)
При включенном или выключенном javascript в броузере при проверке - всегда результат один единичка.

Естественно, т.к. единственное назначение этой функции - это определение браузера пользователя по заголовку User-Agent. А все значения полученного массива - это, как правильно заметил skyboy, возможности данного браузера (прим. GoogleBot не умеет выполнять JS, а FF умеет). 
PM MAIL   Вверх
skyboy
Дата 28.7.2008, 22:20 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 75
Всего: 260



Цитата(sTa1kEr @  28.7.2008,  20:35 Найти цитируемый пост)
А все значения полученного массива

...в свою очередь, полученные исходя из данных в browsercap(abilities).ini. Следовательно, возможность распознать возможности по user-agent'y(если все же он будет получен и будет адекватный клиенту) зависит от версии PHP и/или доредактированности browsercap.ini, оттого полагаться на сей механизм даже в вопросах определения потенциальной поддержки javascript'a я бы не стал.
а судя по тому, каким был первый пост товарища elkeeper на форуме и по его последующему молчанию, товарищ балуется троллизмом.
PM MAIL   Вверх
elkeeper
Дата 28.7.2008, 23:13 (ссылка) |   (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 28.7.2008

Репутация: 1
Всего: 1



Цитата(skyboy @  28.7.2008,  22:20 Найти цитируемый пост)
а судя по тому, каким был первый пост товарища elkeeper на форуме и по его последующему молчанию, товарищ балуется троллизмом. 


Товарищ elkeeper не балуется троллизмом, а просто ехал с работы домой, убеждал себя в осутствии в headerах какого-либо намека на передачу каких-либо свойств браузера (кроме его названия), осознавал бесполезность функции get_browser (параллельно изучая такое же бесполезное содержание browsercap.ini) и заново открывал для себя переменные окружения.

А теперь по теме.

Хотел бы принести искренние извинения всем за присутствие здравого снобизма (именно снобизма - навязчивого желания оскорбить кого-либо не было) в собственном изложении - таков я есть и это остаётся на моей совести.  (проходить курс "Убей в себе сноба" не буду, хотя было бы полезно)

Также, хотел бы извиниться перед alexey___'ем за попытку "сбить с пути истинного" - не нарочно, честно. 12-ти часовой рабочий день дал о себе знать (да, рабочий день у меня начинается в 8 утра).

И конечно же, всем большое человеческое спасибо за то, что не позволили миру получить ещё одного идиота-программиста (это я про себя) в самом расцвете сил.

И ещё я научился пользоваться советами... своими советами smile

PS
Хотя про headerы можно было написать и сразу (это только после поста, я полез в Live HTTP-headers смотреть) - по-моему самое наглядное объяснение, что именно передает браузер и чего передавать он явно не может...
PM MAIL   Вверх
skyboy
Дата 29.7.2008, 00:07 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 75
Всего: 260



Цитата(elkeeper @  28.7.2008,  22:13 Найти цитируемый пост)
Хотя про headerы можно было написать и сразу

т.е. по-твоему простого "инфорация о клиенте в полной мере доступна тоьлко клиенту, а серверу - нет" - недостаточно? smile
Цитата(elkeeper @  28.7.2008,  22:13 Найти цитируемый пост)
осознавал бесполезность функции get_browser

ну, не совсем. все же во время внедрения, браузеры были, наверное, честными(отдаавли корректный user agent), между собой слабо совместимыми на уровне верстки(internet explorer 4 и netscape какой-то там), javascript еле-еле осилил innerHTML - ни о каком createElement/getElementById речи не шло, потому эта функция, наверное, спасала целые народы. А сейчас, когда не то, что заголовки - куки подделывают... эээх... :(
Цитата(elkeeper @  28.7.2008,  22:13 Найти цитируемый пост)
таков я есть и это остаётся на моей совести

только в следующий раз на поворотах аккуратнее, ладушки?

PM MAIL   Вверх
Закрытая темаСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1051 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.