Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Пустой HTTP_USER_AGENT в базе данных - это бот или пользователь ?
 
 автор: Cyrax   (17.05.2009 в 09:27)   письмо автору
 
 

В php-коде заношу информацию о HTTP_USER_AGENT пользователя в БД:
$agent = isset($_SERVER['HTTP_USER_AGENT'])? $_SERVER['HTTP_USER_AGENT']: null;
$newVisitorsAdding_query = "insert visitor(id, agent) values(".$visitorId.", '".$agent."')";

Обнаружил в БД пустые поля, соответствующие HTTP_USER_AGENT. О чём это говорит ?
Это какой-то анонимный бот ?

  Ответить  
 
 автор: Dr Lines   (17.05.2009 в 10:00)   письмо автору
 
   для: Cyrax   (17.05.2009 в 09:27)
 

Возможно, но есть еще такой вариант, что SQL запрос не был выполнен из-за ошибки. Ошибка могла произойти вследствии появления в переменной $agent спец символов.

Например

вот такой запрос выдаст ошибку:
$agent="test_string'";  ..опратите внимание на одинарную кавычку.
$newVisitorsAdding_query = "insert visitor(id, agent) values(".$visitorId.", '".$agent."')";


Чтобы таких ситуаций не возникало, нужно выполнять преобразование переменной функцией
mysql_real_escape_string()

либо другими способоми подставлять обратные слэши перед таким символами:
$agent="test_string\'";

  Ответить  
 
 автор: Cyrax   (17.05.2009 в 14:30)   письмо автору
 
   для: Dr Lines   (17.05.2009 в 10:00)
 

Но ведь если бы происходила ошибка, то запрос вообще бы не выполнялся.
А у меня строка, соответствующая этому запросу, заносится в БД (id есть, а агент - пустой)

  Ответить  
 
 автор: Петр   (19.05.2009 в 14:30)   письмо автору
 
   для: Cyrax   (17.05.2009 в 14:30)
 

Скорее всего это робот, но возможно что какой-то неподписанный браузер. Но точно не поисковик, они всегда пишут кто они и что

  Ответить  
 
 автор: 32432   (19.05.2009 в 19:38)
 
   для: Cyrax   (17.05.2009 в 14:30)
 

Возможно это и бот, но Вам явно на дыру указали.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования