|
| |
|
|
| |
для: elenaki
(07.11.2006 в 15:39)
| | | Нет, запись через запятую в строку IP-адресов при посещаемости в 10 000 посетителей - это насилие над базой данных. Тут я полностью с вами согласен, лучше действительно завести под них таблицу. Более того преобразовывать IP-адреса при помощи функции INET_ATON() в BIGINT, а при помощи обратной фукнции INET_NTOA() восстанавливать их обратно в строки, если возникает такая необходимость. Операции с числовыми столбцами будут протекать гораздо быстрее. | |
| |
|
|
| |
|
|
| |
для: cheops
(07.11.2006 в 13:48)
| | | может, стоит сделать отдельную таблицу для IP по датам? а то они записываются все в
одно поле через точку с запятой. за день на сайте бывает больше 10 тыс. посетителей
(это у моего клиента). как будет выглядеть поле iplist или reflist, куда через запятую записаны
10 тыс. (или чуть меньше, но все равно счет на тысячи) IP и столько же рефереров? | |
| |
|
|
| |
|
|
| |
для: elenaki
(07.11.2006 в 10:27)
| | | Да, в принципе нормально, если переход через сутки идёт... т.е. уникальные посетили засчитаны в прошлые сутки, а его хиты добегают в этих сутках... | |
| |
|
|
| |
|
|
| |
для: ihoru
(07.11.2006 в 12:11)
| | | простые визиты добавляются. не добавляются уникальные визиты - после проверки:
//write only not own REFERERES
$arr = array("http://", "www.");
$ref = str_ireplace($arr, "", getenv("HTTP_REFERER"));
if ( !preg_match("#^moysite\.com(.*)#i", $ref) )
mysql_query ("update ".$t1." set iplist = CONCAT(iplist, '$ip;'), reflist = CONCAT(reflist, '".$_SERVER["HTTP_REFERER"].";'), uniq=uniq+1 where dat = '$date'");
|
придется запрос разбивать на части и записывать в uniq всех уникальных, а в iplist и
reflist - только чужих, своих выкидывать... | |
| |
|
|
| |
|
|
| |
для: elenaki
(07.11.2006 в 11:17)
| | | На твой вопрос пока не отвечу, н вот замечание есть.
Тут же наверное
вместо:
//adding visits
mysql_query ("update ".$t1." set visits=visits+1 where dat = '$date'");
|
надо еще и по Ай-Пи выделять, кому добавлять визит! | |
| |
|
|
| |
|
|
| |
для: ihoru
(07.11.2006 в 11:08)
| | |
//adding visits
mysql_query ("update ".$t1." set visits=visits+1 where dat = '$date'");
hours ($t5);
//selet IPs
$sql = mysql_query ("select iplist from ".$t1." where dat = '$date'");
$row = mysql_fetch_array($sql);
$ipl = $row['iplist'];
//unique check
$ip = getip();
if (!checkIP ($ipl, $ip))//if unique
{
//write only not own REFERERES
$arr = array("http://", "www.");
$ref = str_ireplace($arr, "", getenv("HTTP_REFERER"));
if ( !preg_match("#^moysite\.com(.*)#i", $ref) )
mysql_query ("update ".$t1." set iplist = CONCAT(iplist, '$ip;'), reflist = CONCAT(reflist, '".$_SERVER["HTTP_REFERER"].";'), uniq=uniq+1 where dat = '$date'");
}
|
я дописала проверку реферера (не хотела захламлять базу визитами сотрудников). а в итоге
он не пишет вообще уникальные визиты :( один хотя бы надо оставить... (у нас IP стационарный) | |
| |
|
|
| |
|
|
| |
для: elenaki
(07.11.2006 в 11:02)
| | | НЕТ! никак не может!
код давай, тогда сможем чем-то помочь! | |
| |
|
|
| |
|
|
| |
для: ihoru
(07.11.2006 в 11:01)
| | | дел о в том, что я не трогала функции подсчета визитов. дописала немного других функций и
внешний вид переделала. а сбор статистики не трогала. я спрашивала, может ли быть такая
ситуация - 6 визитов и ни одного уникального... | |
| |
|
|
| |
|
|
| |
для: elenaki
(07.11.2006 в 10:27)
| | | Это ты там что-то намудрила! А ай-пи всегда считается!
Так что код давай! | |
| |
|
|
| |
|
|
| |
для: elenaki
(07.11.2006 в 10:27)
| | | >Today were 6 visits and 0 unique visitors.
>какая-то ошибка вкралась в скрипт... я его переделывала под свои запросы (счетчик не ваш).
Вот и ответ на вопрос -)) | |
| |
|
|
|