вопрос по User agent

12
alex90909
На сайте с 14.05.2012
Offline
66
1058

Здравствуйте, подскажите пожалуйста как создать конструкцию if else , если в юзер агенте присутствует значение google или bot ?

Например есть такой юзер агент

SAMSUNG-SGH-E250/1.0 Profile/MIDP-2.0 Configuration/CLDC-1.1 UP.Browser/6.2.3.3.c.1.101 (GUI) MMP/2.0 (compatible; Googlebot-Mobile/2.1; +http://www.google.com/bot.html)

Я хочу

if (код);

{ инфо если в юзер агенте есть "bot" или "google" }

else

{ в юзер агенте таких значений нет }

Обмен криптовалют с KursoFF (http://kursoff.com) выгодно, комфортно и безопасно.
IL
На сайте с 20.04.2007
Offline
435
#1

if (preg_match('/(bot|google)/i', $_SERVER['USER_AGENT'])) {
// google-bot
echo 'bot';
} else {
// не бот
echo 'not bot';
}
... :) Облачные серверы от RegRu - промокод 3F85-3D10-806D-7224 ( http://levik.info/regru )
LovelAss
На сайте с 05.06.2009
Offline
96
#2

Такой вариант быстрее работает:


if ( strpos($_SERVER['USER_AGENT'], "bot") !== false || strpos($_SERVER['USER_AGENT'], "google") !== false ) {
echo "Bot";
} else {
echo "User";
}
alex90909
На сайте с 14.05.2012
Offline
66
#3
LovelAss:
Такой вариант быстрее работает:

if ( strpos($_SERVER['USER_AGENT'], "bot") !== false || strpos($_SERVER['USER_AGENT'], "google") !== false ) {
echo "Bot";
} else {
echo "User";
}

благодарю :)

---------- Добавлено 31.08.2012 в 21:41 ----------

пробовал оба варианта, для теста сделал под свой дроид, код выглядит так:

<?
if (preg_match('/(Opera|Android)/i', $_SERVER['USER_AGENT'])) {

echo 'bot';
} else {

echo 'not bot';
}

?>

В юзер агенте присутствуют и "Android " и "Opera ", захожу с телефона, мне выдает not bot , хотя должно выдавать обратное)

IL
На сайте с 20.04.2007
Offline
435
#4

Упс.. $_SERVER['HTTP_USER_AGENT']

alex90909
На сайте с 14.05.2012
Offline
66
#5
ivan-lev:
Упс.. $_SERVER['HTTP_USER_AGENT']

не помогло....

IL
На сайте с 20.04.2007
Offline
435
#6
LovelAss:
Такой вариант быстрее работает:

Намного? А если ещё парочку агентов добавить - код "поползёт".

Иногда скорость разработки + удобство дальнейшей работы (читать код) перевешивает не только десятитысячные доли секунды... И вряд ли именно этот участок будет "узким местом" приложения...

не помогло....

А должно было...

alex90909
На сайте с 14.05.2012
Offline
66
#7
ivan-lev:
Намного? А если ещё парочку агентов добавить - код "поползёт".
Иногда скорость разработки + удобство дальнейшей работы (читать код) перевешивает не только десятитысячные доли секунды... И вряд ли именно этот участок будет "узким местом" приложения...


А должно было...

меня все равно палит как бота

IL
На сайте с 20.04.2007
Offline
435
#8
alex90909:
меня все равно палит как бота

а в регулярке opera|android?

alex90909
На сайте с 14.05.2012
Offline
66
#9
ivan-lev:
а в регулярке opera|android?

я так и прописал андрод и опера , захожу со своего дроид

bums
На сайте с 03.07.2006
Offline
449
#10

function IsCrawler() {
$get_browser = get_browser($_SERVER['HTTP_USER_AGENT'],1);
return $get_browser['crawler'];
}
if(IsCrawler()) {
echo 'bot';
}
else {
echo 'no bot';
}

для справки

http://www.php.net/manual/en/function.get-browser.php

http://browsers.garykeith.com/downloads.asp

Недорогая регистрация и продление доменов RU/SU/РФ/COM/NET/ORG/и т.д. ( https://www.regnic.name/?sesign ) в РЕГРУ, РЕГТАЙМ, Р01, РУЦЕНТР. А так же хостинг и SSL сертификаты.
12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий