Как обнаружить мобильное устройство и получить информацию агента пользователя, отправлять и сохранять эту информацию в базе данных на сервере, только один раз? - PullRequest
10 голосов
/ 21 мая 2011

Есть ли скрипт для проверки пользовательского агента, а затем отправки и сохранения этой информации в базу данных на сервере?

Я создаю мобильный веб-сайт с двумя версиями, такими как m.facebook.com и touch.facebook.com , и хочу перенаправить его на другие мобильные телефоны. и я использую WURFL устройство обнаружения.

Так, например, m.html5version.com должен быть доставлен на все устройства, поддерживающие HTML5, а m.mobileversion.com должен быть доставлен на все другие мобильные телефоны.

Так что мне нужен способ обнаружить устройство и браузер 1 раз, используя любой метод на стороне сервера или на стороне клиента. если какой-либо пользователь впервые откроет веб-сайт на устройстве, то должен запуститься скрипт, который соберет информацию об устройстве и браузере и сохранит информацию в моей существующей базе данных WURFL, поэтому в следующий раз, когда какой-либо пользователь будет приходить с того же устройства, он будет перенаправлять на сенсорную или мобильную версию сайта в зависимости от устройства.

Так что только 1-й раз на 1-м устройстве я хочу обнаружить устройство и сохранить информацию.

Есть ли способ сделать это?

Например

Android 1.6 не поддерживает HTML5 и все еще используется. Поэтому я хочу перенаправить все устройства Android 1.6 на m.mobileversion.com , а не на touch.mobileversion.com

И в сенсорной версии сайта я использую теги HTML 5, такие как <header>, <footer>, <nav> и т. Д., Которые не поддерживаются Android 1.6. Поэтому я хочу определить первое устройство, которое получит доступ к веб-сайту с устройства Android 1.6, и потому что HTML5 не поддерживается в 1.6, поэтому пользовательский агент должен быть сохранен в моей базе данных, тогда я буду, когда в следующий раз любой пользователь откроет веб-сайт в 1.6, он будет перенаправлен Для автоматической версии lo-fi мобильное устройство не требуется обнаруживать во второй раз для любого устройства.

Ответы [ 3 ]

22 голосов
/ 24 мая 2011

см. Ссылку ниже, это идеально подойдет для ваших нужд

http://detectmobilebrowser.com

ниже приведен еще один скрипт:

http://detectmobilebrowsers.mobi

4 голосов
/ 21 мая 2011

Возможно, вы захотите взглянуть на это в jQuery, поскольку это интересно.

В дополнение к обнаружению браузера, они обнаруживают функции браузера:

http://api.jquery.com/jQuery.browser/

http://api.jquery.com/jQuery.support/

Кроме того, имейте в виду, что некоторые мобильные пользователи не хотят перенаправляться на мобильное оптимизированное устройство. Я, например, категорически ненавижу, когда сайт обнаруживает мой iPad как мобильное устройство и отправляет меня (без какой-либо возможности переопределить его) на неаккуратный мобильный сайт, который я даже не хочу просматривать с iPhone.

Устройства iOS и Android, в целом, будут хорошо работать со стандартным сайтом, если он правильно закодирован. И другие мобильные телефоны быстро умирают.

0 голосов
/ 25 мая 2011

Если вы обнаруживаете и сохраняете данные только один раз, вы можете установить cookie для записи того факта, что вы уже сделали обнаружение. Затем при следующей загрузке страницы проверьте, существует ли файл cookie - если нет, то вызовите функцию обнаружения и выполните запись в базу данных. Если вы нашли файл cookie, значит, вы уже собрали данные и можете пропустить их снова.

http://www.quirksmode.org/js/cookies.html

...