Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Удаление файлов из списка указанного в txt

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: через фтп
blacks
Отправлено: 23 Августа, 2009 - 23:52:29
Post Id


Новичок


Покинул форум
Сообщений всего: 12
Дата рег-ции: Авг. 2009  


Помог: 0 раз(а)




Есть нижеследующий пример.
К нему необходимо добавить функцию удаления директорий (и поддиректорий)

Смотрел http://ru.php[dot]net/manual/en/func[dot][dot][dot]on[dot]ftp-rmdir.php и пробовал подставлять
примеры от туда. Не получалось.

Решил обратиться к вам за помощью.
Если у кого есть уже готовый вариант то готов перейти на него - не принципиально
главное чтоб работало Недовольство, огорчение

Всем откликнувшимся заранее большущие спасибо!

PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. ini_set('display_errors', 1);
  3. ini_set('display_startup_errors', 1);
  4.  
  5. $ftp_user_name = '*';
  6. $ftp_user_pass = '*';
  7. $ftp_server = '*';
  8.  
  9. $conn_id=ftp_connect($ftp_server);
  10. $login_result=ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
  11. if($login_result) echo 'Connected.<hr><br>';
  12. $pathes=file('files_to_delete.txt');
  13.  
  14. foreach ($pathes as $path)
  15. {
  16.     $path=trim($path);
  17.     if(ftp_delete($conn_id, $path))
  18.     {
  19.         echo 'Deleted -> '.$path.'<br>';
  20.     }
  21. }
  22.  
  23. ftp_close($conn_id);
  24.  
  25. ?>

(Отредактировано автором: 24 Августа, 2009 - 00:29:51)

 
 Top
Nestor
Отправлено: 24 Августа, 2009 - 00:04:55
Post Id



Частый гость


Покинул форум
Сообщений всего: 220
Дата рег-ции: Март 2009  


Помог: 0 раз(а)




CODE (text):
скопировать код в буфер обмена
  1.  
  2. if (!empty($list)) foreach($list as $value) ftp_rmdirr($value, $handle);
  3.  

А если там не пусто?
надо две функции.Одна читает, другая удаляет...


-----
Aurus CMS
 
 Top
blacks
Отправлено: 24 Августа, 2009 - 00:35:59
Post Id


Новичок


Покинул форум
Сообщений всего: 12
Дата рег-ции: Авг. 2009  


Помог: 0 раз(а)




Nestor пишет:
А если там не пусто?
надо две функции.Одна читает, другая удаляет...

Извинте в первом посте я выставил не тот пример - из тех что пытался доработать но не получилось.
Исправил в первом посте php код - изначальный пример который удаляет только файлы
(к нему и нужно как-то привинтить удаление директорий и суб директорий)


Вот еще один вариант с удалением директорий.. но когда запускаешь php'ник браузер
зависает на "ожидается ответ от..." и ничего не происходит минутами Недовольство, огорчение Пароли и логины
проверял.

PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. ini_set('display_errors', 1);
  3. ini_set('display_startup_errors', 1);
  4.  
  5. $ftp_user_name = '*';
  6. $ftp_user_pass = '*';
  7. $ftp_server    = '*';
  8.  
  9.  
  10. if (false === ($conn_id = @ftp_connect($ftp_server))) {
  11.     exit('connect is invalid');
  12. }
  13. if (false === ($login = @ftp_login($conn_id, $ftp_user_name, $ftp_user_pass))) {
  14.     exit('login invalid');
  15. }
  16.  
  17. $pathes = file('files_to_delete.txt');
  18.  
  19. foreach ($pathes as $path) {
  20.     $path = trim($path);
  21.     ftp_rmdirr($path, $conn_id);
  22. }
  23.  
  24. ftp_close($conn_id);
  25.  
  26.  
  27.  
  28. function ftp_rmdirr($path, $handle) {
  29.     if (!(@ftp_rmdir($handle, $path) || @ftp_delete($handle, $path)))
  30.         {
  31.         $list = ftp_nlist($handle, $path);
  32.         if (!empty($list))
  33.             foreach($list as $value)
  34.                 ftp_rmdirr($value, $handle);
  35.         }
  36.     @ftp_rmdir($handle, $path);
  37. }
  38.  
  39. ?>
 
 Top
blacks
Отправлено: 24 Августа, 2009 - 22:42:42
Post Id


Новичок


Покинул форум
Сообщений всего: 12
Дата рег-ции: Авг. 2009  


Помог: 0 раз(а)




Извините меня пожалуйтса
Но возможно что мне кто-нибудь сможет помочь?
 
 Top
Stierus Супермодератор
Отправлено: 25 Августа, 2009 - 10:28:16
Post Id



Рекордсмен по количеству сообщений за 7 дней


Покинул форум
Сообщений всего: 2132
Дата рег-ции: Дек. 2008  
Откуда: Москваль


Помог: 52 раз(а)




ты попробуй по раздельности тестировать : отдельно смотри, читается ли файл, отдельно смотри, правильно ли берутся названия файлов на удаление , отдельно смотри, нормально ли идёт удаление файла по ftp ... ну а потом уже пытайся все это соединить воедино. Вот ты все потестируй, пойми, где именно у тебя ошибка, а потом уже будем решать, что с ней делать. А так я тоже сейчас 2 метра классов выложу и спрошу, почему у меня сайт не работает - так не делают Улыбка
 
My status
 Top
blacks
Отправлено: 25 Августа, 2009 - 10:46:11
Post Id


Новичок


Покинул форум
Сообщений всего: 12
Дата рег-ции: Авг. 2009  


Помог: 0 раз(а)




Извините если немного за офтоп...
Но я ужу спекся - пытался собрать пример из кусочков (аля фреймворк как версте)
а не писать каждую строчку - я не программист. В результате потрачено 4 дня только на это!
Потрачено ни в что! А надо только лишние файлы после инсталяции цмс поудалять было...

Разбирать по функциям не могу ибо не программист.
Мог поучится постепенно на примерах - времени учить пхп к сожалению нет.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB