Здравствуйте! Я новичок на этом форуме и у меня крайне небольшой опыт программирования на PHP, но я постараюсь соблюдать правила форума и, по возможности, быть полезным. У меня следующая проблема: требуется организовать доступ к файлу (RAR архив) так, чтобы к нему нельзя было обратиться напрямую, через адресную строку браузера. В идеале (а иначе и делать не стоит) перед скачиванием пользователь должен просмотреть страницу с информацией о файле. Планируется выкладывать на сайт музыку, так что нежелательно, чтобы её можно было скачать просто пройдя по ссылке с другого сайта. Хотелось бы узнать все способы, которыми можно реализовать нечто подобное. Заранее благодарен!
Попробуй в следующий раз сначала, поискать по форуму, потом задавать вопрос. http://php.ru/forum/viewtopic.php?t=12603 В папку с файлами кидай файл .htaccess: Код (Text): deny for all
Ты хоть пост-то прочёл? Я как-бы знаю о существовании htaccess. Если я ставлю deny for all, то как пользователь скачает архив???
я, наверное, плохо обьяснил Пользователь должен иметь возможность скачать определённый файл только после просмотра страницы с информацией о нём. С куками и сессиями я работать умею, но прикол вот в чём: если доступ к файлу изначально запрещён через htaccess, то пользователь воообще не сможет его скачать Как быть?
Ты тему прочитал, на которую тебе ссылку дал? Не мешало бы! Тогда дам ссылку на конкретный пост, если читать и разбираться влом, а денег уже хочется: http://php.ru/forum/viewtopic.php?p=104044#104044 Даже код, приведу, мне не влом! PHP: header('Content-Disposition: attachment; filename="'.$row['link'].'"'); readfile($row['link']);
Спасибо, что указали на конкретный кусок кода! Я прочёл тему, но, в самом деле, плохо понял как работает механизм, там описанный. Теперь поищу в гугле что-нибудь про PHP: header('Content-Disposition: attachment; filename="'.$row['link'].'"'); readfile($row['link']);
htaccess закрывает доступ к файлу через веб-сервер. Но поскольку пхп работает с файловой системой - он то имеет к нему доступ, а значит, может его отдавать.