PHP скрипт временных ссылок на текстовой базе

временные ссылкиPHP скрипт формирования временных ссылок можно строить по разному. Например все можно сделать на базе MySQL, а можно не завязываться со сторонней базой и сформировать на PHP временные ссылки в обыкновенной текстовой базе. Базу ссылок можно сериализовать, хотя это совершенно не обязательно.

Тема временных ссылок на PHP уже рассматривалась в контексте CMS на файлах. В данном посте рассмотрен механизм формирования временных ссылок не только с конечным временем существования, но и с конечным количеством кликов по ссылке. Эта тема может быть интересна как один из вариантов построения ссылок на скачивание товара в интернет магазине цифровых товаров.

Итак суть состоит в том, что для формирования временных ссылок необходимо организовать два файла, один из которых будет содержать базу уникальных названий архивов для скачивания с их ID, в качестве ID могут быть просто уникальные числобуквенные номера архивов, а другой просто пустой файл где будут формироваться строки с уникальными номерами временных ссылок, временем их формирования и количеством запросов. Например файл-база названий архивов может выглядеть так:

001|Шаблон сайта 1|template1.rar
002|Шаблон сайта 2|template2.rar
...

Файл временых ссылок разбивается на строки, разделителем внутри строки может ыть любй малоиспользуемый символ, например - | и может быть примерно таким:

001|1958cf25e6ede4932346b3a6e59c61ec|1299603969|3
002|8cc8c8c542ae9e623decafcef004aa39|1299603977|7
...

Первое в строке это уникальный ID файла (001), второе это случайный хеш для текущего файла, третье - время формирования строки, четвертое - количество запросов файла. Количество запросов файла можно увеличивать при переходе по ссылке запроса при условии совпадения хеша из строки запроса с тем, что находится в строке базы временных ссылок. При превышении количества запросов над установленным в виде константы, строка из базы временных ссылок удаляется с соответствующим собщением. Вот собственно и все. Для того, чтобы просмотреть весь механизм в деталях можно воспользоваться очередной версией Acvarif-CMS.

Все делается на локальном сервере, куда должна уже быть установлена и запущена CMS. Нужно открыть в Dreamweawer или в блокноте файлы data/php/antileech/templinks.php, data/bases/bdfiles/templinks.dat, перейти по ссылке http://acvarifcms.ru/lrub3part2/lrub3part2page1.html и обновляя страницу и кликая по ссылке "загрузка" наблюдать за тем, что происходит в файле templinks.dat (примерное ниже по тексту) одновременно анализируя PHP скрипт временных ссылок templinks.php.

lrub3part2/lrub3part2page1|e69b2ca5e9fc89b89e42245eca0697b5|1299693320|2
lrub3part2/lrub3part2page1|b9806d502ce838b13f9a7dcc107e7d9c|1299693336|1
lrub3part2/lrub3part2page1|cb32166070e2afc0cb8e2a6d22853f50|1299693346|1
lrub3part2/lrub3part2page1|1eb43658bc4c09767f208bb60051a2b6|1299693368|1
lrub3part2/lrub3part2page1|25dc0791b9dcd8ecb6098d0132dd9ce6|1299693377|6
lrub3part2/lrub3part2page1|c54835f8a482f5628836a42333cfcd1c|1299693498|2

Наличие обильных комментов полностью прояснит механизм его работы. Надеюсь данный пост послужит на пользу тем кто интересуется PHP... Вопросы и замечания через форму для комментов...

Top.Mail.Ru