Анализируем заходы посетителей с поисковых систем на PHP
Практически каждый веб мастер хочет знать, откуда и в каком количестве идут посетители на его сайт.
Он ставит различные счетчики, регистрируеться в сервисах статистики и пр. Довольно часто
хостинг-компании предоставляют подробную статистику посещений, которая также анализирует ее,
определяет, откуда зашел посетитель и пр.
В этой статье мы постараемся сделать такую штуку, которая бы анализировала заходы с поисковых систем.
Ограничимся на примере всем(?) известного Яндекса ( http://yandex.ru )
Анализировать мы будем так:
- Определяем, откуда зашел посетитель
- Если он пришел с поисковой машины, то определяем, по какому запросу(ключевому слову, фразе и т.д.)
- Добавляем запрос в базу данных
- Обрабатываем запросы, и, если есть повторяющиеся, то учитываем это, и добавляем к повторяющемуся запросу единичку
- Выводим статистику
- Готово
Определяем, откуда пришел посетитель
Проверять, откуда пришел посетитель, будем при помощи переменной окружения HTTP_REFERER:
<?
\\IP адрес посетителя
@$ip = $_SERVER["REMOTE_ADDR"];
\\Броузер посетителя
@$user_agent=$_SERVER["HTTP_USER_AGENT"];
\\HTTP_REFERER - то, что нам нужно:)
@$refer=$_SERVER["HTTP_REFERER"];
Потом проверяем, если посетитель пришел с поисковой машины:
if (ereg("yandex.ru",$refer))\\Если в URL, откуда пришел посетитель,
\\имееться сочетание yandex.ru,
\\то пользователь пришел с поисковой системы
\\то разбираем HTTP_REFERER и "вытягиваем" оттуда
\\поисковой запрос(убираем все ненужное):
{
$refer=preg_replace("/(http:\/\/www.yandex.ru\/yandsearch\?text\=)/","",$refer);
$refer=preg_replace("/(\&stype\=www)/","",$refer);
}
?>
Теперь остаеться только добавить запрос, по которому пришел посетитель, IP и броузер посетителя в базу.
С этим, думаю, разберетесь:)
Удачи!
|