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

Форум PHP

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

 

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

вид форума:
Линейный форум Структурный форум

тема: Как сделать расширенную статистику обращений к файлам на сервере без MySQL
 
 автор: Vlad1983   (26.01.2016 в 18:00)   письмо автору
972 байт
 
 

Здравствуйте! В php я практически не разбираюсь. Я нашел скрипт счетчика обращений (скачиваний) файла. Статистика находится в файле txt, куда записывается счетчик. MySQL нет. В нем только число, которое увеличивается с каждым скачиванием или просмотром. Я данные этого счетчика вывел на php-страницу. Скрипт я приложил.

Но теперь есть задача расширить статистику так, чтобы выводилось не только общее количество скачиваний, но и дату/время, IP-адрес, количество скачиваний для одного IP-адреса. Каждый раз, когда происходит переход по ссылке, количество заносится в общее количество и появляется новая строка с данными скачавшего, где и будет дата/время, IP-адрес, количество скачиваний. Если один раз по данному IP уже было скачано - добавляется счетчик в имеющуюся строку и, соответственно в общее количество добавляется "1". Как это правильно называется. Вывод хитов, хинтов или логов или еще как-то, я толком не знаю. Каким образом это нужно реализовать? Возможно ли так сделать без использования MySQL. Можно, даже сделать, что каждый столбец будет выводится в разные файлы для простоты. Формат времени и даты может быть любой, но лучше более понятный.rnrnВыглядеть таблица должна будет, примерно так:

Общее количество скачиваний: 97
Дата, время | IP-адрес | Количество скачиваний
01.01.2016 01:00 | 192.168.5.1 | 2
01.01.2016 01:00 | 192.168.5.1 | 4
01.01.2016 01:00 | 192.168.5.1 | 5
01.01.2016 01:00 | 192.168.5.1 | 12
01.01.2016 01:00 | 192.168.5.1 | 1

  Ответить  
 
 автор: Trianon   (26.01.2016 в 18:10)   письмо автору
 
   для: Vlad1983   (26.01.2016 в 18:00)
 

Эта таблица показывает 5 скачиваний или 24?

  Ответить  
 
 автор: Vlad1983   (27.01.2016 в 10:44)   письмо автору
 
   для: Trianon   (26.01.2016 в 18:10)
 

Эта таблица может показывать сколько угодно скачиваний. Цифры и количество строк для примера. В этой таблице может и 10 и 100 и 1000 строк, где также может быть разное количество скачиваний для одного IP (хоть 1000 скачиваний). И соответственно в общее количество по всем IP это тоже добавляется

  Ответить  
 
 автор: Trianon   (29.01.2016 в 02:07)   письмо автору
 
   для: Vlad1983   (27.01.2016 в 10:44)
 

>Цифры и количество строк для примера.

Так приводите такой пример, который разъясняет проблему а не запутывает её.
Который раскрывает тонкости, особенности, краевые эффекты, а не показывает, что вы научились копипастить одну строку в несколько.
Пока что из вашего описания непонятно ровным счетом ничего.

  Ответить  
 
 автор: Vlad1983   (11.02.2016 в 13:50)   письмо автору
33.4 Кб
 
   для: Trianon   (29.01.2016 в 02:07)
 

Есть готовое ТЗ и, если вы возьметесь за это и реально сможете сделать, то готов заплатить.rnrnПрикладываем документ word в котором показано, как мы хотим чтобы выглядела наша статистика.rnВ нем сначала идет страница с общими данными по рассылкам, а расширенная статистика по каждому скачанному файлу будет открываться, если нажать кнопку «подробнее», находящуюся под именем этого файла. Открытие расширенной статистики, в идеале, должно происходить во всплывающем окне с прокруткой по необходимости по центру страницы. rnЕсли с этим сложно, то можно сделать якоря на таблицы на этой же странице после общей статистики. Но надо предусмотреть чтобы не возникла проблема, когда файл будет весить очень много. Хотя рассылок у нас не очень много и скачиваний каждого файла тоже в среднем 100-200. Рассылки происходят обычно 2-3 раза в неделю. rnИли третий вариант - отфильтровать вывод, чтобы на той же самой странице выводилась расширенная статистика, а все остальные данные пропадали (фильтровались). Под таблицей будет кнопка «Вернуться к общей статистике», при нажатии на которую убираются расширенные данные выбранного файла и снова мы видим страницу с общей статистикой.rnrnСмысл таков, что есть рассылки, статистика которых выводится на этой главной странице с общими данными. Рассылка может иметь от одного до нескольких файлов, которые включены в группу, например «Рассылка «Продленники ИС»», «Рассылка «Поздравление с Новым Годом»». Поэтому, статистика должна выводится группами. Файлы по рассылкам будут заносится вручную на сервер. Для этого должна быть возможность в коде скрипта для этого файла указать путь к файлу; дату рассылки; название группы, в которой должен выводится файл. Группы, скорее всего, будут создаваться в кодовом блоке для файла или отдельных блоках, но привязка к группе должна быть, чтобы скрипт понимал, в какой группе выводить эти файлы. Сделайте привязку файлов к группам на ваше усмотрение (как лучше, как правильнее). rn Сам скрипт счетчика я также выложил в документе Word, с помощью которого был сделан простой счетчик. Как работает этот счетчик, я вкратце описал в этом документе. Как видно, что счетчик выполняется для одного файла. Если, возможно, то лучше, конечно сделать один скрипт счетчика для всех файлов и запись в один «.txt» файл. Но нужно учитывать, что на странице с общей статистикой должен быть автоматический вывод этих файлов, привязанных к определенным группам (рассылкам). Выглядеть и работать должно также, как в документе Word.

  Ответить  
 
 автор: KPETuH   (27.01.2016 в 12:37)   письмо автору
 
   для: Vlad1983   (26.01.2016 в 18:00)
 

Я бы наверное не делал количество скачиваний, а на каждое скачивание заводил новую строчку, а потом уже считал бы количество скачиваний c ip по количеству строк.

  Ответить  
 
 автор: Vlad1983   (11.02.2016 в 13:51)   письмо автору
33.4 Кб
 
   для: KPETuH   (27.01.2016 в 12:37)
 

Есть готовое ТЗ и, если вы возьметесь за это и реально сможете сделать, то готов заплатить.rnrnПрикладываем документ word в котором показано, как мы хотим чтобы выглядела наша статистика.rnВ нем сначала идет страница с общими данными по рассылкам, а расширенная статистика по каждому скачанному файлу будет открываться, если нажать кнопку «подробнее», находящуюся под именем этого файла. Открытие расширенной статистики, в идеале, должно происходить во всплывающем окне с прокруткой по необходимости по центру страницы. rnЕсли с этим сложно, то можно сделать якоря на таблицы на этой же странице после общей статистики. Но надо предусмотреть чтобы не возникла проблема, когда файл будет весить очень много. Хотя рассылок у нас не очень много и скачиваний каждого файла тоже в среднем 100-200. Рассылки происходят обычно 2-3 раза в неделю. rnИли третий вариант - отфильтровать вывод, чтобы на той же самой странице выводилась расширенная статистика, а все остальные данные пропадали (фильтровались). Под таблицей будет кнопка «Вернуться к общей статистике», при нажатии на которую убираются расширенные данные выбранного файла и снова мы видим страницу с общей статистикой.rnrnСмысл таков, что есть рассылки, статистика которых выводится на этой главной странице с общими данными. Рассылка может иметь от одного до нескольких файлов, которые включены в группу, например «Рассылка «Продленники ИС»», «Рассылка «Поздравление с Новым Годом»». Поэтому, статистика должна выводится группами. Файлы по рассылкам будут заносится вручную на сервер. Для этого должна быть возможность в коде скрипта для этого файла указать путь к файлу; дату рассылки; название группы, в которой должен выводится файл. Группы, скорее всего, будут создаваться в кодовом блоке для файла или отдельных блоках, но привязка к группе должна быть, чтобы скрипт понимал, в какой группе выводить эти файлы. Сделайте привязку файлов к группам на ваше усмотрение (как лучше, как правильнее). rn Сам скрипт счетчика я также выложил в документе Word, с помощью которого был сделан простой счетчик. Как работает этот счетчик, я вкратце описал в этом документе. Как видно, что счетчик выполняется для одного файла. Если, возможно, то лучше, конечно сделать один скрипт счетчика для всех файлов и запись в один «.txt» файл. Но нужно учитывать, что на странице с общей статистикой должен быть автоматический вывод этих файлов, привязанных к определенным группам (рассылкам). Выглядеть и работать должно также, как в документе Word.

  Ответить  
 
 автор: confirm   (11.02.2016 в 16:02)   письмо автору
 
   для: Vlad1983   (11.02.2016 в 13:51)
 

Странно то, что говорится о рассылках, а статистика по скачиваниям. Но если эти два понятия как-то связаны, то наверное же не руками производится рассылка, а есть типа сервиса, в котором можно определить рассылку, ее содержимое, время и т.д. А если можно создать задание на рассылку, то статистика о ней должна порождаться автоматически. Если же это не так, то изначально нужно все пересмотреть, тогда и не придется заниматься файлами вручную.

  Ответить  
 
 автор: Vlad1983   (11.02.2016 в 19:20)   письмо автору
 
   для: confirm   (11.02.2016 в 16:02)
 

Нет это 2 совершенно разные задачи.

  Ответить  
 
 автор: confirm   (12.02.2016 в 05:19)   письмо автору
 
   для: Vlad1983   (11.02.2016 в 19:20)
 

В вашем ТЗ мухи с котлетами в одной тарелке.
А по сути - задачи должны обслуживать скрипты без надобности беспокоится о каких-то 111.txt или 222.txt, это вообще не должно предметом обсуждения, иначе вы не автомат хотите, а серверную головоломку.

  Ответить  
 
 автор: Vlad1983   (15.02.2016 в 11:30)   письмо автору
 
   для: confirm   (12.02.2016 в 05:19)
 

Так. по сути и требуется, чтобы все было автоматизировано. На сайте первая версия задачи. Полное ТЗ могу выслать, если вы реально можете сделать.

  Ответить  
 
 автор: confirm   (15.02.2016 в 12:49)   письмо автору
 
   для: Vlad1983   (15.02.2016 в 11:30)
 

Если ТЗ типа документа в приложении, то затруднительно что либо будет сделать, ибо это не ТЗ. Да и я не могу сказать, что прямо сразу сяду и сделаю, на данный момент я немного занят.
А почему не в базе статистику?

  Ответить  
 
 автор: Valick   (15.02.2016 в 13:23)   письмо автору
 
   для: confirm   (15.02.2016 в 12:49)
 

http://phpforum.su/index.php?showtopic=88872&hl=

  Ответить  
 
 автор: Vlad1983   (15.02.2016 в 14:11)   письмо автору
 
   для: Valick   (15.02.2016 в 13:23)
 

На этом форуме я тоже размещался. И это и есть моя тема. Я на многих размещался.

  Ответить  
 
 автор: Vlad1983   (15.02.2016 в 14:09)   письмо автору
 
   для: confirm   (15.02.2016 в 12:49)
 

Если вы пришлете почту, куда я отправлю ТЗ, то это возможно. На многих форумах нет возможности прикрепить файл. А какая нужна база? База с файлами для рассылки? Таковой нет. Файлы готовятся, потом вручную копируются на сервер. А далее, их нужно связать со скриптом. Получается, тоже вручную. Если автоматизировать, то этот момент, я думаю, останется ручным, т.к. скрипт не знает к каким именно названиям файлов нужно привязывать. Если только не положить файлы в одну папку, откуда крипт будет считывать все файлы и их названия. Но в одну папку положить будет плохо, т.к. будет все в куче. Если только в этой папке не будут структуры папок и скрипт будет читать не только файлы, но и путь к ним.

Есть база данных со списками рассылки в формате xls, где название компании и почта. И она напрямую никак не связана ни с сайтом, ни с почтой. По сути, нет сайта с БД, MySql и админкой. Сайт, по своей сути, имеет тип визитки.

  Ответить  
 
 автор: confirm   (15.02.2016 в 14:54)   письмо автору
 
   для: Vlad1983   (15.02.2016 в 14:09)
 

> Файлы готовятся, потом вручную копируются на сервер. А далее, их нужно связать со скриптом. Получается, тоже вручную.

Это просто геморрой, какая тут уж автоматизация, если кто-то готовит файл с каким-то именем, затем его заливает на сервер, да еще надо указать что....

У вас вообще похоже все геморрой, а автоматизация это -

Есть сервис рассылок, в который можно добавлять или удалять из него задания. При добавлении задания ему дается описание и прочие параметры. При добавлении задания оно регистрируется в системе получая уникальный идентификатор, по которому и связываются все файлы/записи в таблицах, и если файлы, то они создаются автоматически.

Сервис может определять важность рассылки (приоритет), указывать периодичность и длительность рассылки, или же указывать только единичную отправку в назначенное время. Планировщик задач отправляющий рассылки отправляет их по этим указанным параметрам.

Статистика скачиваний и прочего касающегося рассылки, это отдельная задача сервиса, собирающая информацию и записывая ее в таблицы или файлы соответственно связанные по уникальному идентификатору.

Оператор рассылки имеет интерфейс управления, где можно что-то закачать на сервер для новой задачи, или заметь в существующей. Указать параметры рассылок и т.п., а также просмотреть статистику.

То есть никаких Федя приготовил файл, придумал как его назвать, а затем загружает и указывает скрипту "пиши сюда" нет.

То что у вас, я уже сказал как называется, и вам по большому счету ничего и не надо, уж коли сами руками грузите, связываете, то достаточно и того скрипта, что в них пишет. А править этот геморрой чтобы он был чуть красивее, это к тем, кому такое интересно и "все равно скука".

  Ответить  
 
 автор: Vlad1983   (15.02.2016 в 15:42)   письмо автору
 
   для: confirm   (15.02.2016 в 14:54)
 

Я ТЗ выложил на сервер http://motrw.com/unsubscribe/TZ.docx, там всё показано кратко и наглядно, возможно станет понятнее, что нужно.

Такой сервис уже предлагался на другом форум, но он нам не подходит по той же причине, что и без БД и MySql, а также с большими затратами для такой, на наш взгляд, маленькой задачи. Без БД и MySql мы хотим сделать лишь по той причине, что данных будет собираться не так много и собираться они будут не так часто, поэтому предполагаем, что задача показалась вам более сложной, чем есть на самом деле и нам кажется, что можно решить её проще. Если же нет, то будем думать насчёт БД и MySql.

  Ответить  
 
 автор: confirm   (15.02.2016 в 15:55)   письмо автору
 
   для: Vlad1983   (15.02.2016 в 15:42)
 

Такой сервис уже предлагался на другом форум, но он нам не подходит

А другого я просто не вижу, то что вы пишите, ну это чушь полнейшая. Во-первых подобным заниматься не интересно. Да зачем что-то вообще делать в том, что вы описываете? Ну и продолжайте делать руками, вы ведь фактически все задаете сами. А складывать цифры, так и того скрипта, что приведен хватит.

  Ответить  
 
 автор: Vlad1983   (17.02.2016 в 16:54)   письмо автору
 
   для: confirm   (15.02.2016 в 15:55)
 

Для не большого количества записей это не чушь.

  Ответить  
 
 автор: confirm   (17.02.2016 в 19:31)   письмо автору
 
   для: Vlad1983   (17.02.2016 в 16:54)
 

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

  Ответить  
 
 автор: Vlad1983   (15.02.2016 в 14:10)   письмо автору
 
   для: confirm   (15.02.2016 в 12:49)
 

Если вы пришлете почту, куда я отправлю ТЗ, то это возможно. На многих форумах нет возможности прикрепить файл. А какая нужна база? База с файлами для рассылки? Таковой нет. Файлы готовятся, потом вручную копируются на сервер. А далее, их нужно связать со скриптом. Получается, тоже вручную. Если автоматизировать, то этот момент, я думаю, останется ручным, т.к. скрипт не знает к каким именно названиям файлов нужно привязывать. Если только не положить файлы в одну папку, откуда крипт будет считывать все файлы и их названия. Но в одну папку положить будет плохо, т.к. будет все в куче. Если только в этой папке не будут структуры папок и скрипт будет читать не только файлы, но и путь к ним.

Есть база данных со списками рассылки в формате xls, где название компании и почта. И она напрямую никак не связана ни с сайтом, ни с почтой. По сути, нет сайта с БД, MySql и админкой. Сайт, по своей сути, имеет тип визитки.

  Ответить  
 
 автор: Vlad1983   (15.02.2016 в 11:59)   письмо автору
 
   для: KPETuH   (27.01.2016 в 12:37)
 

Но, нужно, чтобы было видно сколько скачиваний было по одному IP. Как потом их считать. Искать по всей таблице и вручную считать. Сверху таблицы отображается общее количество по всем скачивания для всех IP.

  Ответить  
Rambler's Top100
вверх

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