|
|
|
| Статистика считается только для ареса 192.168.5.8 (локальный сервер), причем неважно на какую страницу переходит пользователь, т.е. посчитывает общее количество переходов по сайту, не определяет ни ОС, ни IP, ни броузер.
Установлен Apache 2.0.52, PHP 5.0.2, MySQL 5.0.0a
Если включаю register_globals = On то статистика считается для count.php
variables_order = "EGPCS"
Подскажите что может еще настроить или другой счетчик установить (желательно с такой же подробной статистикой) | |
|
|
|
|
|
|
|
для: DEMON
(25.11.2004 в 16:22)
| | Хм... попробуйте для начала присвоить переменной $obtip в конфигурационном файле conf.php значение 1. Проблема может быть связана с определением IP-адреса посетителя она может отличаться на разных серверах.
Если вам не сложно создайте страницу c вызовом функции phpinfo() и вызовите страницу с машины, обладающей другим IP-адерсом. Совпадает ли значение для переменных $_SERVER["SERVER_ADDR"] и $_ENV["REMOTE_ADDR"] с этим адресом? | |
|
|
|
|
|
|
|
для: cheops
(25.11.2004 в 18:41)
| | Пробовал и с $obtip.
$_SERVER["SERVER_ADDR"] и $_ENV["REMOTE_ADDR"] с разными адресами
Может проблема что это все стоит на Windows. Потому что $PHP_SELF не возвращает имени файла, а $_SERVER['PHP_SELF'] работает корректно, но и браузер и все остальное тоже не определяется.
Поэтому к сожалению вопрос остается в силе. Спасибо за консультацию. | |
|
|
|
|
|
|
|
для: DEMON
(26.11.2004 в 14:04)
| | >$_SERVER["SERVER_ADDR"] и $_ENV["REMOTE_ADDR"] с разными адресами
А где стоит правильный (именно удалённой машины)? | |
|
|
|
|
|
|
|
для: cheops
(26.11.2004 в 14:27)
| | в _SERVER["SERVER_ADDR"] стоит правильный адрес удаленной машины, а в _ENV["REMOTE_ADDR"] адрес машины на которой смотрю | |
|
|
|
|
|
|
|
для: DEMON
(26.11.2004 в 16:19)
| | Ага, тогда строку 11 и 12 файла count.php попробуйте заменить на
<?php
$ip = $_ENV["REMOTE_ADDR"];
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(26.11.2004 в 16:39)
| | почему-то когда делаю вывод echo $_ENV["REMOTE_ADDR"]; возвращается адрес машины на которой установлен сервер, а при echo $_SERVER["PHP_SELF"]; - \counter\count.php
Страницы имеют расширени htm но в apache прописал выполнять их как php скрипты, даже пробовал у файлов менять расширение все равно не работает
Уж очень возможности у счетчика хорошие, а жаль что неработает, просто очень не хотелось свой разрабатывать, т.к. времени пока не хватает, да и изучать начал недавно.
Может быть еще что нибудь посоветуете. Пожайлуста. | |
|
|
|
|
|
|
|
для: DEMON
(26.11.2004 в 17:31)
| | >почему-то когда делаю вывод echo $_ENV["REMOTE_ADDR"];
>возвращается адрес машины на которой установлен сервер, а
Когда у нас была схожая ситуация, мы обратились к админам хостинга, так как им виднее как определять IP-адрес удалённого посетителя. Нужно из них вытрясти эту информацию, так как способ определения IP-адреса удалённого посетитля разница от сервера к серверу. Следует внимательно просмотреть отчёт phpinfo() - куда адрес посетителя сбрасывается?
>при echo $_SERVER["PHP_SELF"]; - counter/count.php
Можно вот как поступить, счётчик подключать следующим образом:
<?php
$selfpage = $_SERVER['PHP_SELF'];
include "count.php";
?>
|
а в начало count.php поместить следующую строку
<?php
$_SERVER['PHP_SELF'] = $selfpage;
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(26.11.2004 в 17:56)
| | К сожелению все работает так же без изменений | |
|
|
|
|
|
|
|
для: DEMON
(26.11.2004 в 18:52)
| | Правильно ли я понял. Есть скирпт index.php, в нём код
<?php
$selfpage = $_SERVER['PHP_SELF'];
include "count.php";
?>
|
И переменная $selfpage вместо того что принять значение "index.php" принимает значение "count.php"? | |
|
|
|
|
|
|
|
для: cheops
(26.11.2004 в 18:58)
| | Да.
Но я понял по чему, я указывал полный путь к файлу счетчика с HTTP://, просто сайт содержит много вложенных папок и я думал он будет так работать.
И к сожелению он работает только при register_globals = On, что само по себе как написано в книгах является дырой. | |
|
|
|
|
|
|
|
для: DEMON
(29.11.2004 в 10:29)
| | >И к сожелению он работает только при register_globals = On,
>что само по себе как написано в книгах является дырой.
Если вам не сложно, загрузите счётчик по-новой, это было исправлено 26.11.04.
PS Поменялся только count.php.
http://www.softtime.ru/info/powercounter20.php | |
|
|
|
|
|
|
|
для: cheops
(29.11.2004 в 10:41)
| | Большое Вам спасибо за информацию, скачал новую версию поставил register_globals = Off все работает отлично. | |
|
|
|
|
|
|
|
для: DEMON
(29.11.2004 в 12:03)
| | У меня еще такая просьба, не подскажите как можно сделать чтобы на странице выводилась информация о колличестве посещений всего, сегодня и желательно уникальных | |
|
|
|
|
автор: cheops (из ННГУ) (29.11.2004 в 17:01) |
|
|
для: DEMON
(29.11.2004 в 15:42)
| | Имеются ввиду чистые хосты? | |
|
|
|
|
|
|
|
для: cheops (из ННГУ)
(29.11.2004 в 17:01)
| | А чистые хосты это какие? | |
|
|
|
|
|
|
|
для: DEMON
(29.11.2004 в 18:49)
| | Т.е. без учёта поисковых роботов, менеджеров загрузки и т.п. только посетители, которые используют браузер. | |
|
|
|
|
|
|
|
для: DEMON
(29.11.2004 в 15:42)
| | Вам возможно подойдёт скрипт реализованный на странице SoftTime-ИНФО:
<?php
// Определяем количество хостов
$hosts = show_ip_host(1,0);
function show_ip_host($begin,$end)
{
// Запрос на статистику за временной интервал определяемый
// параметрами $begin,$end
$tmp1 = "putdate < NOW() - INTERVAL '$end' DAY";
if($begin == 0) $tmp2 = "";
else $tmp2 = " AND putdate >= NOW() - INTERVAL '$begin' DAY";
$end = $tmp1.$tmp2;
// Подсчитываем число IP-адресов (хостов)
$query_host = "SELECT COUNT(DISTINCT ip) FROM ip
WHERE systems != 'none' AND
systems != 'robot_yandex' AND
systems != 'robot_google' AND
systems != 'robot_rambler' AND
systems != 'robot_aport' AND
".$end;
// Осуществляем запросы к базе данных
$hst = mysql_query($query_host);
if($hst) $hosts = mysql_result($hst, 0);
return $hosts;
}
?>
|
Хосты помещаются в переменную $hosts, которую вы можете выводить по своему усмотрению.
http://www.softtime.ru/info/ | |
|
|
|