Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 31.07.2010, 11:36   #1
Markiza_vi
Новичок
Джуниор
 
Регистрация: 31.07.2010
Сообщений: 4
По умолчанию Скрипт копирование файлов

Здравствуйте,
Помогите дописать обработчик.
Цель: есть папка, в нее закачиваются графические файлы по фтп. По нажатию на ссылку на сайте эти картинки должны переместиться с этой папки в другую.
Есть код сканирование папки:

PHP код:
        $dir=scandir("7");
        
$exclude=array("7");
        
$photos=array();
        for (
$x=0$x<count($dir); $x++){
            
$dir[$x]="7".$dir[$x];
            if (
is_dir($dir[$x]) && !in_array($dir[$x], $exclude)){
                
$thisfolder=scandir($dir[$x]);
                for (
$f=0$f<count($thisfolder); $f++)
                if (
strpos(strtolower($thisfolder[$f]), ".jpg") || strpos(strtolower($thisfolder[$f]), ".png"))
                    
$photos[]=$thisfolder[$f];
            }
        } 
в принципе функцию копирования или переноса в пхп я знаю... но что-то совместить это все вместе не получается... или пятница была веселой или я уже старею, но сижу с утра и ничего... в общем если кто-то подскажет или допишет - спасибо.
Markiza_vi вне форума Ответить с цитированием
Старый 31.07.2010, 12:09   #2
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

Где код совмещения..?
Что конкретно "не получается"..?
Кросспост на ru-board - тоже без дальнейшего кода...
Странно...
Andkorol вне форума Ответить с цитированием
Старый 31.07.2010, 12:20   #3
Markiza_vi
Новичок
Джуниор
 
Регистрация: 31.07.2010
Сообщений: 4
По умолчанию )

мой код совмещения явно не правильный... логику дальнейших действий я понимаю... в переменную загнать папку назначения и в цикле использовать функцию copy, но вот на деле... неполучается правильно организовать условие цикла... если Вы знаете, допишите (не сочтите за наглость)...

Спасибо.
Markiza_vi вне форума Ответить с цитированием
Старый 31.07.2010, 12:48   #4
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

Там нечего организовывать....
Вместо того,чтобы собирать имена нужных файлов в массив $photos:
Код:
$photos[]=$thisfolder[$f];
вам нужно вставить copy() - и сразу же перемещать нужный файл в новую директорию.

PS: ну и тут же,в случае успешного копирования файла - удалить исходный файл в старой директории...

Последний раз редактировалось Andkorol; 31.07.2010 в 12:50. Причина: PS
Andkorol вне форума Ответить с цитированием
Старый 31.07.2010, 13:09   #5
Markiza_vi
Новичок
Джуниор
 
Регистрация: 31.07.2010
Сообщений: 4
По умолчанию )

а можете дописать полностью, пожалуйста? что-то не могу никак собрать... вроде бы все элементарно...

спасибо
Markiza_vi вне форума Ответить с цитированием
Старый 31.07.2010, 13:21   #6
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

Что дописать...???
Замените $photos[]=$thisfolder[$f]; на copy(...ваши_пути_к_директориям...) - и всё....
В случае успешного копирования - unlink(..исходный файл..)
Вы PHP вообще владеете хоть в какой-то степени..?
Andkorol вне форума Ответить с цитированием
Старый 31.07.2010, 13:39   #7
Markiza_vi
Новичок
Джуниор
 
Регистрация: 31.07.2010
Сообщений: 4
По умолчанию

Цитата:
Сообщение от Andkorol Посмотреть сообщение
Что дописать...???
Замените $photos[]=$thisfolder[$f]; на copy(...ваши_пути_к_директориям...) - и всё....
В случае успешного копирования - unlink(..исходный файл..)
Вы PHP вообще владеете хоть в какой-то степени..?
да это понятно... просто видать где-то торможу...
выдает ошибку
Warning: copy(1.jpg) [function.copy]: failed to open stream: No such file or directory in ...
ну то ладно... разберусь...


спасибо за помощь...
Markiza_vi вне форума Ответить с цитированием
Старый 31.07.2010, 13:44   #8
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

Ошибка указывает на неправильные пути к файлам и директориям при копировании.
Смотрите синтаксис функции copy() - и правильно укажите путь к копируемому файлу,а так же к конечной директории - и всё у вас получится.
Andkorol вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Копирование файлов Demien Общие вопросы Delphi 9 26.03.2010 08:52
Копирование файлов. Leo20 Общие вопросы Delphi 6 13.11.2009 17:03
Копирование файлов critical Microsoft Office Excel 4 02.07.2009 14:45
копирование файлов 59inferno Общие вопросы C/C++ 4 16.06.2009 15:59