![]() |
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]() ![]() ![]() |
|
Dionysius |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 40 Регистрация: 13.4.2006 Где: Новосибирск Репутация: нет Всего: 1 |
Условие задачи:
Нужно отдавать прайс зарегистрированным пользователям. Причём каждый авторизованный пользователь может скачать прайс только один раз. Повторить скачивание он может после того, как будет выложен новый прайс. Клиент вводит свои логин и пароль. При удачном скачивании в базе сохраняется дата загрузки файла. Эту задачу я решил с помощью pear-класса HTTP_Download. Но в данном случае не получается реализовать докачку через программы - менеджеры загрузок (например, Download Manager). Вот код моего решения:
Конечно, это малонадёжный вариант, но порой срабатывает. А сегодня утром один клиент даже умудрился воспользоваться докачкой. Но я вообще интересуюсь, может, есть какие-то другие способы? Например, можно делать временную ссылку на файл, которая по истечении какого-то периода времени будет удалена. Недостаток здесь тот, что она будет на этот период доступна всем, кому клиент захочет её передать. |
|||
|
||||
Diesel Draft |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 876 Регистрация: 18.1.2005 Где: Lviv, Ukraine Репутация: 1 Всего: 5 |
Я вот не понимаю почему только один рас. Это значит что если он будет катать стандартным ІЕ и у него будет сбой то пройдется ждать следующего обновления.
Можешь создать силку, которая буде специально сгенерирована именно для этого пользователя. Например http://mysite/dprice.php?id=ndndndndnd . Например id это MD5 код од имени пользователя и даты обновления. Потом когда качаешь ты перевертыш этот пользователь или нет. А в коде просто делаешь readfile() для отдачи файла |
|||
|
||||
Dionysius |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 40 Регистрация: 13.4.2006 Где: Новосибирск Репутация: нет Всего: 1 |
Diesel Draft, вот как раз если б стандартным IE, то проблем не будет. В этом случае при разрыве соединения $error будет !== true.
А условия задачи поставило начальство. Хотя, конечно, сам файл клиенты могут рассылать по почте кому захотят. Наверно, более оптимальным вариантом всё-таки будет создание временных ссылок для клиентов. |
|||
|
||||
Diesel Draft |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 876 Регистрация: 18.1.2005 Где: Lviv, Ukraine Репутация: 1 Всего: 5 |
я просто не вижу другого нормального решения
|
|||
|
||||
![]() ![]() ![]() |
Правила форума "PHP" | |
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |