У меня есть форма загрузки, в которой пользователи могут загружать изображения, которые в настоящее время загружаются в созданную мной папку под названием 'temp', и их местоположение сохраняется в массиве под названием $ _SESSION ['uploaded_photos'].Как только пользователь нажимает кнопку «Следующая страница», я хочу, чтобы он переместил файлы в новую папку, которая динамически создается прямо перед этим.
if(isset($_POST['next_page'])) {
if (!is_dir('../images/uploads/listers/'.$_SESSION['loggedin_lister_id'])) {
mkdir('../images/uploads/listers/'.$_SESSION['loggedin_lister_id']);
}
foreach($_SESSION['uploaded_photos'] as $key => $value) {
$target_path = '../images/uploads/listers/'.$_SESSION['loggedin_lister_id'].'/';
$target_path = $target_path . basename($value);
if(move_uploaded_file($value, $target_path)) {
echo "The file ". basename($value). " has been uploaded<br />";
} else{
echo "There was an error uploading the file, please try again!";
}
} //end foreach
} //end if isset next_page
Пример используемого значения $:
../ images / uploads / temp / IMG_0002.jpg
И пример используемого $ target_path:
. ./images/uploads/listers/186/IMG_0002.jpg
Я вижу файл, находящийся во временной папке, оба эти пути мне нравятся, и я проверил, что функция mkdir действительно создала папку, в которой это было хорошо.
Как переместить файл в другую папку с помощью php?