2015-09-03 3 views
0

Борясь с тем, почему мой код не работает. В конечном итоге я пытаюсь скопировать весь каталог, но теперь решил только скопировать один файл, поскольку функция «while loop» все еще выше моего понимания. Я определенно буду признателен за помощь. Вот что у меня есть сейчас. Я просто создаю папку с именем пользователя, которое я получил из формы. Я просто не знаю, как копировать файлы из другой существующей папки. Я проверил, есть ли здесь что-то подобное, но ничего не нашел.Скопируйте существующий файл в новый каталог, используя PHP

<?php 
$folder = "/"; 
$name = $_POST['name']; 
$thisdir = getcwd(); 
$folderPath = $thisdir . $folder . $name; 
$source = "index.html"; 
$desitination = $folderPath; 
copy($source, $desitination); 
if(!file_exists($folderPath)){ 
    mkdir($folderPath); 
    chmod($folderPath,0777); 
} 

?> 
+0

Что ОС вы используете? Это окна или unix-подобная среда? – egon12

+0

Я использую Apache. –

+0

Хорошо, но какая операционная система ?. Разделитель каталогов в окнах «\», а в Linux/Mac OS X «/». Это может быть проблемой. – egon12

ответ

1

Функция копирования в php принимает два имени, а не только каталог.

Таким образом, вместо

copy("file1.txt", $folderPath) 

сделать

copy("file1.txt", $folderPath . "/file1.txt") 

и использовать обратную связь об ошибке лучшего понимания

if (copy("file1.txt", "folder1/file1.txt")) { 
    echo "File Copied"; 
} else { 
    $errors= error_get_last(); 
    echo "File not copied, " . $errors["messages"]; 
} 
Смежные вопросы