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

Форум PHP

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

 

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

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

тема: Power counter и названия страниц

Сообщения:  [1-10]   [11-15] 

 
 автор: cheops   (25.03.2005 в 21:53)   письмо автору
 
   для: Loki   (25.03.2005 в 11:55)
 

Если бы вы прислали бы их мне на simdyanov@softtime.ru, благодарность моя не имела бы границ, как в прочем и многочисленных пользователей этой системы (если надумаете укажите пожалуйста так же ваши ФИО и e-mail - мы их вставим в шапку файлов, как того требует BSD-лицензия).

   
 
 автор: Loki   (25.03.2005 в 11:55)   письмо автору
 
   для: Loki   (25.03.2005 в 11:43)
 

chops, я внес в счетчик довольно много мелких изменений, удобных на мой взгляд. Нужны ли они кому-то, или вы потом выпустите более новую версию?

   
 
 автор: Loki   (25.03.2005 в 11:43)   письмо автору
 
   для: Loki   (25.03.2005 в 10:32)
 

Перенес поле title в таблицу pages
выкладываю обновленный файл pages.php
В новой версии ему можно передавать дополнительно параметры begin и end

   
 
 автор: Loki   (25.03.2005 в 10:32)   письмо автору
 
   для: cheops   (25.03.2005 в 10:00)
 

>мне вообще не нравится идя хранить title в таблице ip
а ведь это была ваша идея, озвученная всего на несколько постов выше:)

   
 
 автор: cheops   (25.03.2005 в 10:00)   письмо автору
 
   для: Loki   (25.03.2005 в 09:46)
 

1) Тогда нужно курочить таблицу pages - добавить новый столбец и исправить соотвествующим образом запрос в строке 36 файла count.php. Т.е. добавить добавление ссылки туда.
2) Количество уникальных столбцов можно получить при помощи ключевого слова DISTINCT, но не советую этот путь, мне вообще не нравится идя хранить title в таблице ip - так как эта таблица склонна к непомерному разрастанию.

   
 
 автор: Loki   (25.03.2005 в 09:46)   письмо автору
 
   для: cheops   (22.03.2005 в 10:08)
 

Нужен совет: главная страница счетчика формируется на основе количества записей в таблице pages, а названия страниц мы берем из таблицы ip. Таким образом, "мертывые" ссылки (не имевшие переменной title) не отображаются, но при расчете количества страниц учавствуют. Мне видится два возможных решения: перенос столбца с названиями страниц в таблицу pages (в этом случае, как мне кажется, можно будет выводить и "мертвые ссылки тоже") и второй вариант - при расчете страниц использовать только количество уникальных значений из столбца title таблицы ip, но вот как реализовать подобный запрос, я не знаю.
Что посоветуете вы?

   
 
 автор: Loki   (23.03.2005 в 11:42)   письмо автору
 
   для: cheops   (22.03.2005 в 22:07)
 

Дыкть... распирает же от гордости:)
Кстати, проанализировав пути движения людей по сайту сделал определенные выводы относительно навигации. Скрипт оказался даже полезнее чем я ожидал!

   
 
 автор: cheops   (22.03.2005 в 22:07)   письмо автору
 
   для: Loki   (22.03.2005 в 16:23)
 

Если работает, критики никакой быть не может :)))

   
 
 автор: Loki   (22.03.2005 в 16:23)   письмо автору
 
   для: Loki   (22.03.2005 в 13:45)
 

Итак. Сделал следующее:
добавился файл pages.php следующего содержания:

<?php

  $title
='Старницы просмотренные с IP адреса';
  
$pageinfo='На этой странице вы можете видеть страницы просмотренные с IP-адреса.'
  
$menu=3;  
  
$helppage='';
  
// Заголовок страницы
  
include "topcounter.php";
  if (!isset(
$nav)) $nav=0;
   if (
$nav==0
{
$hit="count(id_ip) AS hits,";
$hit1="GROUP BY title";}
  else 
{
$hit="";
 
$hit1="";}
print 
"<a href='pages.php";
if (
$nav==0) print "?nav=1";
else print 
"?nav=0";
print 
"&ip=$ip'>Навигация/Статистика</a>";

?>

    <table border="1" cellpadding="4" cellspacing="0" bordercolordark="white" 

bordercolorlight="gray" align="center">   
       <tr><td><p>Страница</td>
<? 
if ($nav==0) print "<td><p>Просмотров</p></td>";
?>
<td><p>Последнее обращение</td></tr>
<?
  $query_pages
="SELECT title,
                       
$hit
                       putdate
                       FROM ip
                       WHERE 
                       putdate >= DATE_FORMAT( NOW( ) , '%Y-%m-%d 23:59:59' ) - 

INTERVAL 1 DAY
                       AND ip = '
$ip'
                       
$hit1
                       ORDER BY putdate DESC"

  
$pags mysql_query($query_pages);
  if(!
$pagsputerror("Ошибка при обращении к таблице IP-адресов...");

 while(
$pag mysql_fetch_array($pags))
{
 echo 
"<tr>
        <td>"
.$pag['title']."</td>";
if (
$nav==0) print "<td>".$pag['hits']."</td>";
 echo 
"<td>".$pag['putdate']."</td></tr>";
}
  
?>
</table>
<? 
 
include "bottomcounter.php";   
?>
  


вызывается со страницы adresses.php так:

pages.php?ip=параметр

Что видим: сначала какие страницы и сколько раз посетил человек. При клике на переключателе "Навигация/Статистика " мы видим каким путем человек следовал по сайту и, соответственно, делаем выводы об удачности навигации.
Жду критики.
...и его забросали цветами в горшках...

   
 
 автор: Loki   (22.03.2005 в 13:45)   письмо автору
 
   для: cheops   (22.03.2005 в 10:08)
 

удалено

   

Сообщения:  [1-10]   [11-15] 

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

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