tche
Новичок
Проблема при скачивания больших PDF файлов
Всем привет. Столкнулся с проблемой, на первый взгляд очевидной, но работающего решения пока найти не могу.
Имеем сайт элетронных журналов www.turpion.org . Пользователь может посмотреть содержание и, при желании, скачать полный текст нужной статьи в виде PDF. PDF файлы порой довольно большого размера, а пользователи со всего мира, скорость иногда хреновенькая. Человек (тетенька библитекарь из средней азии) нажимает на download, файл начинает грузиться, но окно еще не поменялось, тогда он снова нажимает на download, еще, и т.д. в конце концов он получает файл, но в логах (access_log) куча записей о скаченных файлах.
Каждый день запускается парсер логов, который смотрит, кто из пользователей чего скачал, и сравнивает объем скачанного файла с размером реального PDF файла и таким образом определяет, удачно ли (полностью) файл был скачен или нет.
Таким образом, в результате анализа логов, оказывается, что некоторые юзеры скачивают один и тот же файл 2-3-4 раза с интервалом 10-20-30-60 секунд (в зависимости от размера файла). Конечно, на самом деле, они только один раз его получили.
Возможные решения:
1. Запретить повторное нажатие на кнопку download. Это можно, в принципе, сделать как на JavaScript, так и средствами PHP (выставлять переменную сессии при первом нажатии, и если она уже есть, то не выполнять dowload), но вопрос - когда и каким образом этот запрет снять. Ведь PDF это не html файл, и в него не вставишь кусок кода
2. При нажатии download выплевывать сообщение типа Wait please..., которое должно ИЗЧЕЗНУТЬ, когда файл загрузится.
Каким образом?
Если это сообщение выдавать в другом окне, то это окно закрыть автоматически не получается.
Проблема усугубляется тем, что система работает сейчас и должна работать почти под все броузеры, в том числе Netscape 3, под линуксом и т.п. Нельзя сильно опираться на JavaScript, так как он может быть отключен.
Нельзя ли PDF выдавать из HTML файла как картинку, то есть типа <img src=...pdf>, тогда можно пользоваться событиями onLoad и т.п?
Если сходить на сайт www.turpion.org, то там почти в каждом журнале есть Sample Issue для бесплатного просмотра, то есть можно дойти до полного текста и посмотреть, как это выглядит.
Спасибо за внимание )) Буду крайне признателен за любые советы.
Дима
Всем привет. Столкнулся с проблемой, на первый взгляд очевидной, но работающего решения пока найти не могу.
Имеем сайт элетронных журналов www.turpion.org . Пользователь может посмотреть содержание и, при желании, скачать полный текст нужной статьи в виде PDF. PDF файлы порой довольно большого размера, а пользователи со всего мира, скорость иногда хреновенькая. Человек (тетенька библитекарь из средней азии) нажимает на download, файл начинает грузиться, но окно еще не поменялось, тогда он снова нажимает на download, еще, и т.д. в конце концов он получает файл, но в логах (access_log) куча записей о скаченных файлах.
Каждый день запускается парсер логов, который смотрит, кто из пользователей чего скачал, и сравнивает объем скачанного файла с размером реального PDF файла и таким образом определяет, удачно ли (полностью) файл был скачен или нет.
Таким образом, в результате анализа логов, оказывается, что некоторые юзеры скачивают один и тот же файл 2-3-4 раза с интервалом 10-20-30-60 секунд (в зависимости от размера файла). Конечно, на самом деле, они только один раз его получили.
Возможные решения:
1. Запретить повторное нажатие на кнопку download. Это можно, в принципе, сделать как на JavaScript, так и средствами PHP (выставлять переменную сессии при первом нажатии, и если она уже есть, то не выполнять dowload), но вопрос - когда и каким образом этот запрет снять. Ведь PDF это не html файл, и в него не вставишь кусок кода
2. При нажатии download выплевывать сообщение типа Wait please..., которое должно ИЗЧЕЗНУТЬ, когда файл загрузится.
Каким образом?
Если это сообщение выдавать в другом окне, то это окно закрыть автоматически не получается.
Проблема усугубляется тем, что система работает сейчас и должна работать почти под все броузеры, в том числе Netscape 3, под линуксом и т.п. Нельзя сильно опираться на JavaScript, так как он может быть отключен.
Нельзя ли PDF выдавать из HTML файла как картинку, то есть типа <img src=...pdf>, тогда можно пользоваться событиями onLoad и т.п?
Если сходить на сайт www.turpion.org, то там почти в каждом журнале есть Sample Issue для бесплатного просмотра, то есть можно дойти до полного текста и посмотреть, как это выглядит.
Спасибо за внимание )) Буду крайне признателен за любые советы.
Дима