|
|
|
| Помогите реализовать. А может что-то готовое есть?
Задумка такая значит-с: переделал под себя скрипт счетчика посещений, написаного на перле, теперь надо внести дополнения. А именно: хочется, чтобы логи (.dat) чистились в первых числах каждого месяца и на е-майл отправлялся отчёт за прошедший месяц. Сначала на е-майл, потом чистка.
Можно ли сделать автоматическую чистку/отправку по наступлении 00ч. 01 минут 1-го числа месяца (с 30/31 на 1)? Если "нет", то осуществить такое зпдание по обращении посетителя в первых числах нового месяца. | |
|
|
|
|
|
|
|
для: Рассвет
(08.11.2006 в 14:50)
| | Реализовать это возможно, но только при наличие кода. На форуме есть возможность прикрепления файлов.
Рекомендую присмотреться к разработкам этой студии. У них есть замечательная система для контроля посещаемости сайта PowerCounter:
http://softtime.ru/info/powercounter30.php | |
|
|
|
|
|
|
|
для: mishaMC
(08.11.2006 в 15:04)
| | А зачем код? Мне в уже имеющийся нужно вставить дополнение. Только я не умею писать на перл.
Если сегодняшнее число месяца 26 или больше, то поставить метку в файле (если метка стоит, то пусть стоит). Если сегодняшнее число месяца 1 или больше (до 5), то обратиться к файлу с меткой и если метка есть, то создать HTML файл и отправить его по е-майл, а метку удалить.
Действие с меткой нужно потому, что несколько файлов (счетчик посещений на одном сайте для нескольких разных сайтов, то есть всё в одном месте).
Помогите, пожалуйста реализовать такое! | |
|
|
|
|
|
|
|
для: Рассвет
(08.11.2006 в 14:50)
| | А в каком формате хранятся логи? | |
|
|
|
|
|
|
|
для: cheops
(08.11.2006 в 17:52)
| | Формате?
Windows-1251(ANSI); расширение файлов - .dat
И ещё, попутно появились вопросы: адрес е-майл указывается при отправке и откуда-то должен браться, спамерские сканеры могут этот адрес достать из крипта cgi если он в нём лежит в открытом виде? Если такое возможно, то как скрыть адрес?
И наверное, надо ещё дополнить своё прежнее задание - Если сегодняшнее число месяца 1 или больше (до 5), то обратиться к файлу с меткой и если метка есть, то создать HTML файл и отправить его по е-майл, а метку удалить и почистить файлы логов. - Это задание должно идти первым, а вторым: Если сегодняшнее число месяца 26 или больше, то поставить метку в файле (если метка стоит, то пусть стоит).
Кому интересно, даю ссылку на скрипт счетчика посещений, который я использую:
http://www.dynamic-design.com.ua/develop/perl/counter.zip | |
|
|
|
|
|
|
|
для: Рассвет
(09.11.2006 в 08:06)
| | Нет имеется ввиду какова структура файла .dat? Как он организован? | |
|
|
|
|
|
|
|
для: cheops
(09.11.2006 в 11:52)
| | Какова структура? Я не понимаю - зачем это надо? Ведь после проверки на метку лог файл только отчистить надо и всё.
На всякий случай приведу одну строчку:
"Ср - 7.11.2006|213.177.104.164|213.177.104.164||Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; MyIE2; SV1)|ru| " | |
|
|
|
|
|
|
|
для: Рассвет
(09.11.2006 в 12:40)
| | Очистить вообще ото всех записей? | |
|
|
|
|
|
|
|
для: cheops
(09.11.2006 в 12:47)
| | Да, отчистить от всех записей. | |
|
|
|
|
|
|
|
для: Рассвет
(09.11.2006 в 16:47)
| | Просто стереть все записи в начале месяца можно при помощи скрипта
<?php
$text = file_get_contents("text.dat");
$pattern = "#[\d]{1,2}\.([\d]{1,2})\.([\d]{4})\|#";
preg_match($pattern, $text, $out);
if(isset($out[1]))
{
if($out[2].$out[1] > date("Yn"))
{
// Всё стираем
$fd = fopen("text.dat", "w");
fwrite($fd, "");
fclose($fd);
}
}
?>
|
PS Однако помимо этого вы в начале упоминали о почтовом отчёте - как он должен выглядеть? | |
|
|
|
|
|
|
|
для: cheops
(09.11.2006 в 23:07)
| | А мне перл нужен! Ведь я хочу в уже имеющемся скрипте сделать изменения. | |
|
|
|