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

Разное

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

 

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

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Обсудим статистику посещаемости?:)

Сообщения:  [1-10]    [11-20]   [21-30]  [31-32] 

 
 автор: Loki   (19.07.2005 в 13:06)   письмо автору
 
   для: Loki   (19.07.2005 в 09:25)
 

Продолжим тут:

http://softtime.ru/forum/read.php?id_forum=3&id_theme=5548&page=1

   
 
 автор: Loki   (19.07.2005 в 09:25)   письмо автору
 
   для: cheops   (19.07.2005 в 00:41)
 

Таки напортачил малость: сгоряча убрал условие $search != "own_site" и строчку if(strpos($reff,$_SERVER["SERVER_NAME"])) $search = 'own_site';
Уже понял что был неправ:) Вернул все назад:

<?
if(!empty($reff) && $search="none")
      {
        
$query_reff "INSERT INTO refferer VALUES (
                 0,
                 '
$reff',
                 now(),
                 INET_ATON('
$ip'),
                 
$id_page)";
        @
mysql_query($query_reff);
      }
      
//вносим поисковый запрос в соответствующую таблицу
     
if($search!="none" && $search != "own_site")
     {
      switch(
$search)
?>

ну и далее...

   
 
 автор: cheops   (19.07.2005 в 00:41)   письмо автору
 
   для: Loki   (19.07.2005 в 00:38)
 

Завтра на свежую голову за него возьмусь :)))

   
 
 автор: Loki   (19.07.2005 в 00:38)   письмо автору
 
   для: Loki   (18.07.2005 в 22:51)
 

Короче, добавил новую таблицу. Структура:

CREATE TABLE 'searchquerys' (
  'quer_id' int(11) NOT NULL auto_increment,
  'query' tinytext NOT NULL,
  'putdate' datetime NOT NULL default '0000-00-00 00:00:00',
  'ip' bigint(20) NOT NULL default '0',
  'id_page' int(11) NOT NULL default '0',
  'searches' enum('yandex','google','rambler','aport','mail','msn') NOT NULL default 'yandex',
  PRIMARY KEY  ('quer_id')
) type=MyISAM;

В прикрепленном файле исправленные файлы.
Файл srchtransfer.php перегоняет поисковые запросы в созданную таблицу.
ВНИМАНИЕ! данный файл в процессе работы изменяет структуру таблицы refferers (убирает последний столбец).
Осталось только написать статистику поисковых запросов, но это должно быть не сложно:)
Cheops, посмотрите в count.php не напортачил ли я с условиями?

   
 
 автор: Loki   (18.07.2005 в 22:51)   письмо автору
 
   для: Loki   (14.07.2005 в 14:08)
 

Прикрутил к count.php следующий код:

<?//вносим поисковый запрос в соответствующую таблицу
     
if(!empty($search) && $search != "own_site"
     {
      switch(
$search)
    {
      case 
'yandex':
      {
          
eregi("text=([^&]*)"$reff."&"$query); 
          if(
strpos($reff,"yandpage")!=null)
            
$quer=convert_cyr_string(urldecode($query[1]),"k","w");
          else
            
$quer=$query[1];
        break;
      }
      case 
'rambler':
      {
          
eregi("words=([^&]*)"$reff."&"$query); 
          
$quer=$query[1];
        break;
      }
      case 
'mail':
      {
          
eregi("q=([^&]*)"$reff."&"$query); 
          
$quer=$query[1];
        break;
      }
      case 
'google':
      {
          
eregi("q=([^&]*)"$reff."&"$query); 
          
$tmpstr utf8_win($query[1]); 
          
$quer=$tmpstr;
        break;
      }
      case 
'msn':
      {
          
eregi("q=([^&]*)"$reff."&"$query); 
          
$tmpstr utf8_win($query[1]);
          
$tmpstr;
        break;
      }
      case 
'aport':
      {
          
eregi("r=([^&]*)"$reff."&"$query); 
          
$quer=$query[1];
        break;
      }
     }
//конец для switch
     
$sql="INSERT INTO searchquerys VALUES (0, '$quer', now(), '$ip', $id_page, '$search')";
     @
mysql_query($sql);
    
?>

Стурктура таблицы, думаю, ясна.
Сейчас набросаю скрипт для трансформации таблицы refferer в поисковые запросы, после чего, буду переделывать скрипт статистики запросов, а потом - делать отчет по статистике поисковых слов.

   
 
 автор: Loki   (14.07.2005 в 14:08)   письмо автору
 
   для: cheops   (14.07.2005 в 12:59)
 

Думаю, завести отдельную таблицу следующей структуры:
id
query
putdate
searcher
Чтобы можно было выводить эту статистику за разные промежутки времени.
Вот только надо будет прогонять запросы через регулярное выражение, так как в них частенько встречаются скобки, плюсы и прочее... а после того как это все заменено на пробелы, надо еще убедиться что они не дублируются:)

   
 
 автор: cheops   (14.07.2005 в 12:59)   письмо автору
 
   для: Loki   (14.07.2005 в 09:23)
 

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

   
 
 автор: Loki   (14.07.2005 в 09:23)   письмо автору
 
   для: Loki   (11.07.2005 в 12:05)
 

Cheops, так а чем, собственно, можно помочь?
Думаю взяться за статистику поисковых запросов. Только надо определиться как ее реализовать: по поисковым словам или по поисковым фразам. Думаю, надо делать по фразам целиком: так как запросы с разным порядком следования слов имеют разную релевантность.

   
 
 автор: Loki   (11.07.2005 в 12:05)   письмо автору
7 Кб
 
   для: cheops   (11.07.2005 в 00:47)
 

В count.php еще сделана проверка на изменение названия. То есть если название страницы изменилось, а адрес - нет, то в базе заменяется название, а id остается прежним.
И еще нужная вестч: сделал чтобы можно было просмотреть уже отфильтрованные реффереры за выбранный период (например, зашло ко мне с софттайма за вчера 3 человека, а в таблице не видно с каких именно адресов они зашли. Дополнительный файлк reff.php позволяет это посмотреть).
Ну и до кучи, уже упоминал, что Фильтры отображаются не по содержанию, а по названиям. То есть можно задать фильтр narod.ru/?id=01510146, а в названии написать Гостевая Васи Пупкина. Удобно.

   
 
 автор: cheops   (11.07.2005 в 00:47)   письмо автору
 
   для: Loki   (10.07.2005 в 23:06)
 

А да, 5 периодов на главной странице нужно... возмём :))) title введём пожалуй, но сделаем по хитрому - будем его в перменной name держать - те страницы, у которых он имеется, будут называться по title, а те у которых title нет по старинке - это позволит безболезненно переехать на новые рельсы.

   

Сообщения:  [1-10]    [11-20]   [21-30]  [31-32] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

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