есть ли у PHP возможность отслеживать процесс скачивания пользователем файла?
Т.е. пользователь по урлу скриптом получает поток с файлом и я хочу знать сколько он уже скачал на данный момент.
Спустя 50 минут, 38 секунд (24.06.2009 - 08:35) sergeiss написал(а):
ПХП формирует страницу на сервере, может в процессе общаться с сервером. Но про юзера, про то, что он скачивает, ПХП не знает и знать не может.
Это то же самое, что требовать от производителей автомобилей отчета о том, где находятся произведенные ими автомобили, кто на них ездит, кто что делает. И всё это в реальном времени! Реально?
Это то же самое, что требовать от производителей автомобилей отчета о том, где находятся произведенные ими автомобили, кто на них ездит, кто что делает. И всё это в реальном времени! Реально?
Спустя 18 минут, 4 секунды (24.06.2009 - 08:53) vriadchenko написал(а):
Цитата (sergeiss @ 24.06.2009 - 05:35) |
ПХП формирует страницу на сервере, может в процессе общаться с сервером. Но про юзера, про то, что он скачивает, ПХП не знает и знать не может. |
В том то и дело что PHP формирует этот ответ юзеру, он же читает файл с диска и порциями отдает юзеру в выходной поток. Единственная загвоздка в процессе вывода данных из файла в поток юзера выяснить сколько байт уже ушло юзеру или считалось из входного файла.
Спустя 23 минуты, 12 секунд (24.06.2009 - 09:16) sergeiss написал(а):
Скачивание файла и создание страницы - это разные действия, разные протоколы. ПХП к скачиванию файла не имеет никакого отношения.
Спустя 23 минуты, 9 секунд (24.06.2009 - 09:39) vasa_c написал(а):
Цитата |
он же читает файл с диска и порциями отдает юзеру в выходной поток |
И что, на этом этапе нельзя выяснить сколько ушло?
Спустя 19 минут, 40 секунд (24.06.2009 - 09:59) twin написал(а):
А мне другое интересно. Что значит
Цитата |
я хочу знать сколько он уже скачал на данный момент. |
То есть в онлайн-режиме следить за процессом? А если их много, процессов? И как вообще... Что делать с данными, даже если их удасться получить?
Спустя 7 минут, 2 секунды (24.06.2009 - 10:06) vriadchenko написал(а):
Цитата (twin @ 24.06.2009 - 06:59) |
То есть в онлайн-режиме следить за процессом? А если их много, процессов? И как вообще... Что делать с данными, даже если их удасться получить? |
Да. мне нужна мониторилка скачиваний онлайн. Если бы у меня была инфа по отданному кол-ву юзеру я бы периодически писал бы в скуль базу а в своей админке отслеживал состояние скачивания
Спустя 3 минуты, 3 секунды (24.06.2009 - 10:09) glock18 написал(а):
Цитата (vriadchenko @ 24.06.2009 - 07:06) |
Да. мне нужна мониторилка скачиваний онлайн. Если бы у меня была инфа по отданному кол-ву юзеру я бы периодически писал бы в скуль базу а в своей админке отслеживал состояние скачивания |
чего-то я смысл с трудом уловлю. Может тебе подойдет просто анализ логов веб-сервера? там есть достаточно много информации. единственное, по идее, что ты не сможешь там получить это какой именно пользователь сколько скачал - разве что по ip. суммарный трафик и всякая другая статистика оттуда вытаскивается легко.
Спустя 4 минуты, 52 секунды (24.06.2009 - 10:14) vriadchenko написал(а):
Цитата (glock18 @ 24.06.2009 - 07:09) |
чего-то я смысл с трудом уловлю. Может тебе подойдет просто анализ логов веб-сервера? там есть достаточно много информации. единственное, по идее, что ты не сможешь там получить это какой именно пользователь сколько скачал - разве что по ip. суммарный трафик и всякая другая статистика оттуда вытаскивается легко. |
у меня в урле указывается ИД клиента который скачивает и собственно что скачивает. Поэтому в базе у меня всего одна строка ИД клиента, Имя файла, процент скачанного. Можно было бы анализировать логи конечно только оттуда явно не вытащишь ни ИД ни файл
Спустя 2 минуты, 46 секунд (24.06.2009 - 10:17) glock18 написал(а):
Цитата (vriadchenko @ 24.06.2009 - 07:14) |
у меня в урле указывается ИД клиента который скачивает и собственно что скачивает |
Цитата (vriadchenko @ 24.06.2009 - 07:14) |
Можно было бы анализировать логи конечно только оттуда явно не вытащишь ни ИД ни файл |
вот это как раз неверно. если в урле все есть, то вытащить это как раз можно
Спустя 2 минуты, 22 секунды (24.06.2009 - 10:19) sergeiss написал(а):
Теоретически - можно поставить на сервере какой-то программный шлюз, который будет контролировать процессы скачивания, и можно будет оттуда вытаскивать и анализировать информацию, связанную с IP пользователя.
Но я еще раз повторю вопрос: какое это имеет отношение к ПХП?
Вот когда у тебя такой шлюз будет, тогда уже можно будет говорить о связи с этим шлюзом через ПХП. Можно даже через АЯКС. Вообще красивую штучку можно будет сделать
Но я еще раз повторю вопрос: какое это имеет отношение к ПХП?
Вот когда у тебя такой шлюз будет, тогда уже можно будет говорить о связи с этим шлюзом через ПХП. Можно даже через АЯКС. Вообще красивую штучку можно будет сделать
Спустя 51 минута, 26 секунд (24.06.2009 - 11:11) FatCat написал(а):
(f) passthru (string command [, int return_var])
При выводе в файл, функция выполняется в фоновом режиме, и тогда в самом пхп можно забирать return_var.
Это в теории. Но можно ли из этого сделать индикатор процесса скачивания файла - не представляю.
При выводе в файл, функция выполняется в фоновом режиме, и тогда в самом пхп можно забирать return_var.
Это в теории. Но можно ли из этого сделать индикатор процесса скачивания файла - не представляю.
Спустя 3 часа, 49 минут, 22 секунды (24.06.2009 - 15:00) vriadchenko написал(а):
ладно, всем спасибо. тему закрываем. возможно я не правильно описал суть задачи, но решение такое. рабочее и полностью меня устраивающее
PHP |
include_once('define.inc.php'); |