Форум программистов, компьютерный форум, киберфорум
Наши страницы
PHP для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.74/27: Рейтинг темы: голосов - 27, средняя оценка - 4.74
Midnayt
57 / 57 / 7
Регистрация: 07.12.2009
Сообщений: 321
Завершенные тесты: 1
1

Удаление файлов с сайта

04.10.2012, 00:15. Просмотров 4978. Ответов 21
Метки нет (Все метки)

Здравствуйте, есть корпоративный сайт на php понадобилось сделать модуль выгрузки файлов для сотрудник, выгрузку сделал так: при входе в модуль скрипт связывается по фтп с сервером и если есть новые файлы то файлы добавляются в базу и закачиваются в папку с пользователем, после этого формулируется таблица с ссылками на скачивание файлов .
Также я сделал скрипт который автоматически удаляет файлы двухнедельной давности. Попросили сделать чтоб пользователь сам мог удалить ненужные ему файлы и тут я зашел в тупик программирую на php относительно недавно пошарился по гуглу процедура удаления мне понятно , не понятно только как php скрипт получает какой именно файл нужно удалить . Когда то вроде натыкался на такой вопрос и там что то мудрили при выводе ссылок на скачивание рядом размещали ссылку на php скрипт + id файла с базы но не знаю как это обработать помогите пожалуйста заранее благодарен !!!!!

P.S. сайт находится на удалённом хостинге, сервер в главном отделение где я работаю.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.10.2012, 00:15
Ответы с готовыми решениями:

Как сделать закачку и удаление файлов, создание и удаление каталогов?
Как сделать закачку и удаление файлов, создание и удаление каталогов?

Удаление элемента со страницы сайта
Помогите пожалуйста. Нужно удалить Текст и Checkbox. Как это сделать? В каком...

Удаление файлов
Добрый день. Есть скрипт, который должен удалять файлы из 2-х директорий:...

Удаление файлов
Добрый вечер. На сервере лежит папка (к примеру, "movies"), в ней – файлы и...

Удаление файлов
Здравствуйте дорогие форумчане, столкнулся с такой задачей: На сервере(форум)...

21
Том стоун
2 / 2 / 0
Регистрация: 28.01.2012
Сообщений: 99
04.10.2012, 03:50 2
Я думаю можно подгружать файлы в виде ссылок! При нажатии на ссылку допустим название файла передается методом GET скрипту для удаления!
0
Dolphin
805 / 790 / 199
Регистрация: 21.09.2012
Сообщений: 2,631
04.10.2012, 06:08 3
Цитата Сообщение от Том стоун Посмотреть сообщение
При нажатии на ссылку допустим название файла передается методом GET скрипту для удаления!
Не рекомендую делать удаление чего-либо ссылкой. Так как по ссылкам ходят пауки, им это не особо понравится.
0
Stiv10
6 / 6 / 0
Регистрация: 28.07.2012
Сообщений: 47
04.10.2012, 10:13 4
Интересно, я бы тоже так попробовал реализовать как предложил Том стоун, по нажатию на ссылку серверу передаю 2 параметра, 1-ый допустим "del", а 2-ой - имя файла и написать проверку
PHP
1
2
3
4
if(isset($_GET['del']))
{
    //unlink его
}
что такое пауки я немного знаю..

Dolphin, объясните пожалуйста почему им это не понравится.
0
KOPOJI
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16753 / 6644 / 864
Регистрация: 12.06.2012
Сообщений: 19,897
Завершенные тесты: 1
04.10.2012, 10:14 5
Stiv10, http://www.ibm.com/developerworks/ru/library/l-spider/
0
Stiv10
6 / 6 / 0
Регистрация: 28.07.2012
Сообщений: 47
04.10.2012, 10:22 6
Если я правильно понял автора темы этим скриптом пользуются только сотрудники и чтение или удаление этих файлов это не для всех, тогда какие там могут быть пауки?
0
Dolphin
805 / 790 / 199
Регистрация: 21.09.2012
Сообщений: 2,631
04.10.2012, 10:30 7
Цитата Сообщение от Stiv10 Посмотреть сообщение
по нажатию на ссылку серверу передаю 2 параметра, 1-ый допустим "del", а 2-ой - имя файла и написать проверку
PHP
1
2
3
4
if(isset($_GET['del']))
{
 //unlink его
}
Если не сделать проверку на авторство файла, то робот переходя по ссылкам удалит все ваши файлы которые у вас есть.
0
Stiv10
6 / 6 / 0
Регистрация: 28.07.2012
Сообщений: 47
04.10.2012, 10:38 8
Цитата Сообщение от Dolphin Посмотреть сообщение
Если не сделать проверку на авторство файла
Вы имеете ввиду сессии, куки вошедшего?
0
Dolphin
805 / 790 / 199
Регистрация: 21.09.2012
Сообщений: 2,631
04.10.2012, 10:41 9
Цитата Сообщение от Stiv10 Посмотреть сообщение
Вы имеете ввиду сессии, куки вошедшего?
Либо делать авторизацию и наделять определенного юзера удалять файлы, либо определять кто загрузил файл и только тогда удалять
0
KOPOJI
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16753 / 6644 / 864
Регистрация: 12.06.2012
Сообщений: 19,897
Завершенные тесты: 1
04.10.2012, 10:42 10
либо просто закрыть папку с админкой от поисковых роботов
0
Dolphin
805 / 790 / 199
Регистрация: 21.09.2012
Сообщений: 2,631
04.10.2012, 10:45 11
Цитата Сообщение от KOPOJI Посмотреть сообщение
либо просто закрыть папку с админкой от поисковых роботов
Если делать ссылками, то при переходе будет выдаться ошибка. если это не страшно и не нужен сайт в поисковиках, то да можно. Но по моему, если много одинаковых страниц ему выдаст сайт, то он может вообще его проигнорировать потом. Утверждать не берусь =)
0
KOPOJI
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16753 / 6644 / 864
Регистрация: 12.06.2012
Сообщений: 19,897
Завершенные тесты: 1
04.10.2012, 10:47 12
Dolphin, админку обычно делают в отдельной папке.. какие ссылки? просто директорию закрыть - а внутри как хочешь так и делай, поисковики просто не увидят что там творится. Конечно все зависит от реализации
0
Stiv10
6 / 6 / 0
Регистрация: 28.07.2012
Сообщений: 47
04.10.2012, 10:48 13
Цитата Сообщение от Dolphin Посмотреть сообщение
определять кто загрузил файл и только тогда удалять
это определенно, в таблице базы путь к файлу и id пользователя, который загрузил файл, он загружает, он и удаляет и никаких других файлов он не видит.
Благодарю.)
0
Dolphin
805 / 790 / 199
Регистрация: 21.09.2012
Сообщений: 2,631
04.10.2012, 10:54 14
Цитата Сообщение от Stiv10 Посмотреть сообщение
это определенно, в таблице базы путь к файлу и id пользователя, который загрузил файл, он загружает, он и удаляет и никаких других файлов он не видит.
Благодарю.)
Только надо не просто выводить те, какие он загрузил но и во время удаления проверять еще, так ли это на самом деле.. =))

Добавлено через 1 минуту
Цитата Сообщение от KOPOJI Посмотреть сообщение
Dolphin, админку обычно делают в отдельной папке.. какие ссылки? просто директорию закрыть - а внутри как хочешь так и делай, поисковики просто не увидят что там творится. Конечно все зависит от реализации
Ааа, простите. =) Не сразу понял что имели ввиду
0
Midnayt
57 / 57 / 7
Регистрация: 07.12.2009
Сообщений: 321
Завершенные тесты: 1
04.10.2012, 11:15  [ТС] 15
Цитата Сообщение от Stiv10 Посмотреть сообщение
Если я правильно понял автора темы этим скриптом пользуются только сотрудники и чтение или удаление этих файлов это не для всех, тогда какие там могут быть пауки?
Все правильно сайт в основном только для сотрудников регистрация с одобрением админа пользователи с уровнем 1-3 могут скачивать и удалять файлы статьи, остальные нечего не видят и даже если на прямую обратятся к скрипту их выкинет в лес + идет лог запуска скрипта .

PHP
1
2
3
4
if(isset($_GET['del']))
{
 //unlink его
}
Если можно по подробней как выглядит сама ссылка на удаление файла и как скрипт вытягивает инфу с ссылки. Формирование идет с базы c таблицы user_file то есть в идеале привязать id файла а там уже проверка на глюк если файл принадлежит пользователю удаляю ??

На картинке красным как я себе это представляю.
0
Миниатюры
Удаление файлов с сайта  
Stiv10
6 / 6 / 0
Регистрация: 28.07.2012
Сообщений: 47
04.10.2012, 11:27 16
PHP
1
2
3
4
5
6
7
$fileName = "путь и имя файла";
$var = '<A href='.$_SERVER['PHP_SELF'].'?del=true&fileName='.$fileName.'>Удалить</a>';//ссылка 
echo $var;
if(true == $_GET['del'] && isset(сессия пользователя))
{
    unlink $_GET['fileName'];
}
?
1
Dolphin
805 / 790 / 199
Регистрация: 21.09.2012
Сообщений: 2,631
04.10.2012, 11:30 17
Цитата Сообщение от Stiv10 Посмотреть сообщение
PHP
1
2
3
$var = '<A href='.$_SERVER['PHP_SELF'].'?del=true&fileName='.$fileName.'>Удалить</a>';//ссылка 
if(true == $_GET['del'] && isset(сессия пользователя)) 
{ unlink $_GET['fileName']; }
А если я подменю имя файла в ссылке на ?del=true&fileName='*.*'
0
Midnayt
57 / 57 / 7
Регистрация: 07.12.2009
Сообщений: 321
Завершенные тесты: 1
04.10.2012, 11:42  [ТС] 18
Цитата Сообщение от Dolphin Посмотреть сообщение
А если я подменю имя файла в ссылке на ?del=true&fileName='*.*'
Ты б знал сколько я объяснял как скачать картинку она же по ссылке не сколачивается а открывается в браузере . Так что думаю подменять некто не додумается, а если додумаются им же хуже не выкачают свои файлы ))
0
Dolphin
805 / 790 / 199
Регистрация: 21.09.2012
Сообщений: 2,631
04.10.2012, 11:50 19
Цитата Сообщение от Midnayt Посмотреть сообщение
Ты б знал сколько я объяснял как скачать картинку она же по ссылке не сколачивается а открывается в браузере
Сделал бы страницу php'шную, которая бы посылала заголовки и она бы скачивалась. Не пришлось бы мучаться
0
Midnayt
57 / 57 / 7
Регистрация: 07.12.2009
Сообщений: 321
Завершенные тесты: 1
04.10.2012, 11:58  [ТС] 20
Цитата Сообщение от Dolphin Посмотреть сообщение
Сделал бы страницу php'шную, которая бы посылала заголовки и она бы скачивалась. Не пришлось бы мучаться
Я в основном работаю в с# а тут появилось задание от руководства и пришлось вспоминать 2-й курс универа . С заголовками у меня тоже не сложилось, если можно простой пример буду благодарен.
0
04.10.2012, 11:58
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.10.2012, 11:58

Удаление переменных при закрытии сайта
Здравствуйте. Задача такая: удалять переменную (неважно переменная сессии...

Удаление своего аккаунта пользователем сайта
Всем привет! Сегодня столкнулся с казалось бы элементарным в mysql и рнр....

Удаление неиспользуемых файлов
Здравствуйте, хочу удалять файлы, которые длительное время не открывались,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru