Отправляет email-рассылки с помощью сервиса Sendsay

RFpro.ru: Программирование на PHP

  Все выпуски  

RusFAQ.ru: Программирование на PHP


РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / PHP

Выпуск № 699
от 29.06.2007, 02:05

Администратор:Калашников О.А.
В рассылке:Подписчиков: 423, Экспертов: 52
В номере:Вопросов: 1, Ответов: 3


Вопрос № 92637: Приветствую уважаемых! Дело такое. Хочу смастерить что то типа интернет-магазина, на данный момент столкнулся с задачей такого плана, нужно что бы ссылка (путь к файлу) для скачивания менялась раз в сутки. Файлов много, и предполагается такая...

Вопрос № 92.637
Приветствую уважаемых!
Дело такое.
Хочу смастерить что то типа интернет-магазина, на данный момент столкнулся с задачей такого плана, нужно что бы ссылка (путь к файлу) для скачивания менялась раз в сутки. Файлов много, и предполагается такая система для каждого файла. Как этого можно добиться?
Спасибо.
Отправлен: 23.06.2007, 23:05
Вопрос задал: Chufrinov Vadim (статус: Посетитель)
Всего ответов: 3
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Sea
Здравствуйте, Chufrinov Vadim!
Вообще способов довольно много, но приведу наиболее простой:
Есть таблица (неважно в БД или в файле):
alias file
---------------------------------------------------------
dvf45s34get downloadedFile1.rar
jk34u345iuh downloadedFile2.rar
9dfg8dfg8df downloadedFile3.rar
8dfs786gdfg downloadedFile4.rar
dfgs98sdfg7 downloadedFile5.rar

Смысл в том, что для каждого файла существует псевдоним. И все обращения к файлу происходят непосредственно по этому псевдониму. Например:
http://www.site.ru/download.php?8dfs786gdfg

Тогда скрипту download.php остается только из таблицы выбрать файл по его псевдониму 8dfs786gdfg и это будет downloadedFile4.rar.
Вот и всего делов то.

Ну и раз в сутки просто по рандому или как угодно меняете поля alias в таблице.
Ответ отправил: Sea (статус: 4-ый класс)
Ответ отправлен: 23.06.2007, 23:59
Оценка за ответ: 5
Комментарий оценки:
Супер!!!!
Вот это да, так просто, блин, надо было просто мозгами пораскинуть и сам бы додумался!
Спасибо!!!!!!

Отвечает: Lain
Здравствуйте, Chufrinov Vadim!
Мжно сделать чтобы ссылка менялась раз в сутки - для этого можно использовать идентификатор сессии(предварительно сделав его действительным в течении суток)
---------
Будьте мужественны - худшее впереди!
Ответ отправил: Lain (статус: 2-ой класс)
Ответ отправлен: 24.06.2007, 03:11
Оценка за ответ: 4
Комментарий оценки:
Почти понятно, а как это сделать? Я вообще занимаюсь админством на сервере, а не вебмастерингом, но поручили это мне и вот теперь ломаю голову.... и себе и людям.

Отвечает: Шпилевский Евгений Васильевич
Здравствуйте, Chufrinov Vadim!

Могу предложить один способ, не скажу что он лучший, но возможно вам подойдет...

При создании ссылки генерируете ее вида http://site /download.php?id=dsfhsda32fhjk4sad42

Где в роли id будет выступать любая последовательность символов (можно использовать md5). Эту последовательность заносите в базу данных
-----------------------------------------------------
| id | path |
-----------------------------------------------------
|dsfhsda32fhjk4sad42hfkjsadf | files1.rar|
------------------------------------------------------

на странице download.php пишите код получения ссылки из базы, а затем нечто похожее
// в $path храниться получиная ссылка на файл
header("Content-type: application");
header('Content-Disposition: attachment; filename="1.rar"');

$f = fopen($path,'r');
while (!feof($f))
{
print fread($f,4096);
}

Ответ отправил: Шпилевский Евгений Васильевич (статус: 1-ый класс)
Ответ отправлен: 25.06.2007, 11:54
Оценка за ответ: 4
Комментарий оценки:
Понял до слов "на странице download.php", а дльшекак то сложно.... Попробую конечно сделать.... А попроще ни как?
В любом случае спасибо огромное, что откликнулись!


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2007, Портал RusFAQ.ru, Россия, Москва.
Авторское право: ООО "Мастер-Эксперт Про"
Email: support@rusfaq.ru, тел.: +7 (926) 535-23-31
Хостинг: "Московский хостер"
Поддержка: "Московский дизайнер"
Авторские права | Реклама на портале
Версия системы: 4.52 от 02.05.2007
Яндекс Rambler's Top100
RusFAQ.ru | MosHoster.ru | MosDesigner.ru | RusIRC.ru
Kalashnikoff.ru | RadioLeader.ru | RusFUCK.ru

В избранное