Strict Standards: Resource ID#34 used as offset, casting to integer (34) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#36 used as offset, casting to integer (36) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#37 used as offset, casting to integer (37) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401
ТвойWeb :: Версия для печати :: Счетчик посещений за день [2]
ТвойWeb » WebMaster класс » PHP/Perl » Счетчик посещений за день

Страниц (5): « 1 [2] 3 4 5 »
 

11. ETC - 12 Января, 2006 - 12:03:35 - перейти к сообщению
Там же есть примеры кода...
12. Alone - 12 Января, 2006 - 12:10:18 - перейти к сообщению
Ну вот пример:
CODE:

<?php

$fp = fopen("/tmp/lock.txt", "w+");

if (flock($fp, LOCK_EX)) { // выполнить эксплюзивное запирание
fwrite($fp, "Что-нибудь пишем\n");
flock($fp, LOCK_UN); // отпираем файл
} else {
echo "Не могу запереть файл !";
}

fclose($fp);

?>


А как его применить к этому счётчику?
13. Леголегс - 12 Января, 2006 - 12:39:06 - перейти к сообщению
Alone
Ну блиииин... Подумай головой!
14. Alone - 12 Января, 2006 - 12:49:30 - перейти к сообщению
Леголегс
Да блин думал уже... Улыбка

А путём проб и ошибок пробовать - это долго. Желательно наверняка...
Тем более я вообще без понятия что это такое. Потому что 2000 набирается счётчиком без проблем, а вот после 3000 уже обнуляется. Мож дело то и не в этом... Поэтому надо точно знать. А то с двумя неизвестными как-то сложнова-то уравнения решать Улыбка
15. Леголегс - 12 Января, 2006 - 14:10:41 - перейти к сообщению
Alone
Примерно 2000 посещений набирается к тому моменту, когда посетителей на сайте дофига. Постоянно делаются замиси в файл и в конце концов получается так, что в count.txt питаются внести запись сразу два скрипта. Происходит глюк и от файла остаётся пшик. Чтобы этого избежать надо перед тем как записать в файл (функцией write) его заблокировать. А потом разблокировать. У тебя есть два куска кода на пхп. Первый выполняет поставленную задачу, а во втором используется блокировка файлов. Тебе из двух скриптов надо собрать один. Неужели это так сложно?
PS путь проб и ошибок рулез форева
16. Alone - 12 Января, 2006 - 14:55:30 - перейти к сообщению
Леголегс
Неее не получается, эти блин открывания закрывания, и ещё их чёто много получается...

А на этом форуме вроде ничего не обнуляется... Здесь не в курсе что за код счётчика (тока попроще)?
17. Леголегс - 12 Января, 2006 - 15:38:48 - перейти к сообщению
Alone
И здесь обнуляется. Сразу целые форумы. Просто редко и их быстро восстанавливают. А открываний-закрываний надо всего два.
18. Alone - 12 Января, 2006 - 16:36:25 - перейти к сообщению
Леголегс
Про форумы я знаю.
Я спрашиваю про конкретно счётчик на этом форуме. И конкретно про "хиты за сегодня"...
Я не замечал чтобы он обнулялся. Вот и спрашиваю об ЭТОМ.
19. Alone - 13 Января, 2006 - 01:28:10 - перейти к сообщению
Леголегс
Ладно... проверьте плиз правильно я тут намудрил или нет:

CODE:
<?
$file="count.txt";
$cy = date("Y");//текущий год
$cm = date("n");//месяц
$cd = date("j");//день
$newfile = fopen($file,"r");
list($num,$fy,$fm,$fd) = fscanf($newfile, "%d:%d/%d/%d");
fclose($newfile);
if ($fy!=$cy || $fm!=$cm || $fd!=$cd)
$num = 1;
else
$num++;
$newfile = fopen($file,"w");


if (flock($file, COUNT_EX)) {
fwrite($newfile, "$num:$cy/$cm/$cd");
flock($file, COUNT_UN);
}


fclose($newfile);
echo "document.write('$num');";
?>
20. Alone - 13 Января, 2006 - 07:51:25 - перейти к сообщению
Люди проверьте плиз домашнее задание вверху Улыбка а то счётчик уже затрепал обнуляется каждый час теперь, и выкинуть жалко...

Форум на AlfaSpace.NET


Powered by ExBB
ExBB FM 1.0 RC1 by TvoyWeb.ru
InvisionExBB Style converted by Markus®

[Script Execution time: 0.0405]     [ Gzipped ]



Notice: ob_end_flush(): failed to send buffer of ob_gzhandler (1) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/page_tail.php on line 33