За последние 24 часа нас посетили 17637 программистов и 1596 роботов. Сейчас ищут 1533 программиста ...

Определение мобильного контента

Тема в разделе "Решения, алгоритмы", создана пользователем 440Hz, 27 фев 2009.

  1. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда
    есть табличка в 30к записей с типами агентов. как быстро определить с мобилы пришел человек или нет?

    т.е. нужно по агенту быстро сказать. мобила или нет.
     
  2. Psih

    Psih Активный пользователь
    Команда форума Модератор

    С нами с:
    28 дек 2006
    Сообщения:
    2.678
    Симпатии:
    6
    Адрес:
    Рига, Латвия
    Ну разве что из базы запросом узнавать. Сделать индекс на текстовое поле с ограничением на кол-во первых символов, будет работать достаточно быстро, ИМХО.
    Как вариант, можно эту таблицу сделать memory :)

    А ещё как вариант, делаем запрос - находим такой user agent, делаем md5 от строки и пихаем в какой-нить кеш (я бы запихал в xcache/apc). В итоге будет очень быстро и не сильно занимать место.

    Ещё как вариант, сделать модуль к WEB серверу по типу, как mime-types, что бы он автоматом сам ставил флаг, с мобилы ли он или нет (имхо, это самый быстрый вариант, т.к. реализация на уровне С, хеш-таблицы и всё такое :) )
     
  3. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда
    Psih

    не. ты не понял. агенты уже собраны. нужно прошерстить базу и как-то отделить мобилу от не мобилы, проставив в таблице флаг. так вот как по агенту определить мобилу? какие-нить там подстроки? Типы агентов?
     
  4. Sergey89

    Sergey89 Активный пользователь

    С нами с:
    4 янв 2007
    Сообщения:
    4.796
    Симпатии:
    0
  5. +1 там в базе все мобилы помечены.
     
  6. Psih

    Psih Активный пользователь
    Команда форума Модератор

    С нами с:
    28 дек 2006
    Сообщения:
    2.678
    Симпатии:
    6
    Адрес:
    Рига, Латвия
    440Hz
    А ну сорри :)
    Ну по сути, всё что не Gecko/WebKit/Safari/IE/Opera (помним про OperaMini) поидее можно считать мобильными наверно.
    Ну и get_browser я думаю тоже годится :)
     
  7. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    Sergey89
    Там куча ссылок и все предлагают базу. Некоторые даже с апдейтами.
     
  8. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда
    спасибо парни. будем думать. решать. результаты отпишу.
     
  9. Psih

    Psih Активный пользователь
    Команда форума Модератор

    С нами с:
    28 дек 2006
    Сообщения:
    2.678
    Симпатии:
    6
    Адрес:
    Рига, Латвия
    Помоему нам пора формировать набор каких-то своих решений, баз, полезных скриптов и ресурсов :)
    Я вот скоро думаю выложить класс по закачке и обработке изображений :) Причём можно закачать как через <input> так и по ссылке (щас юзаю в своём проекте, народ доволен, HTTPS не ругается на внешние ресурсы, которые не на HTTPS :) )
     
  10. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда
    как определить мобилу?
     
  11. PHP:
    1. <?
    2. $browser = get_browser(null, true);
    3. echo ($browser['isMobileDevice']?'мобилко':'не мобилко');
     
  12. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда
    о! это помне! это концепт!

    а креведко нету? isKrevedko() ?
     
  13. 440Hz, креведки надо обжаривать в кипящем масле. С чесноком. Потом немножко корицы. совсем чуток. А перед этим замариновать на полчасика в лимоне.
     
  14. Slicer

    Slicer Активный пользователь

    С нами с:
    10 фев 2009
    Сообщения:
    28
    Симпатии:
    0
    а почему у меня $browser['isMobileDevice'] пустой, и еще многие значения? ини файл вроде правильно настроил... (качал php_browscap.ini)
     
  15. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.559
    Симпатии:
    632
    Что все мобильные браузеры (не считая смартфонных/коммуникаторныз), в HTTP_ACCEPT упомнают text/vnd.wap.wml.