#php #file #move
#php #файл #переместить
Вопрос:
Я пытаюсь загрузить изображение с помощью move_uploaded_file();
$target_dir = "product_images/";
$target_file = $target_dir . basename($_FILES["product_image"]["name"]);
if (move_uploaded_file($_FILES["product_image"]["tmp_name"], $target_file)) { // Line 92
echo "<script>alert('The file " . basename( $_FILES["product_image"]["name"]) . " has been uploaded.')</script>";
} else {
echo "<script>alert('Sorry, there was an error uploading your file.')</script>";
die();
}
Поэтому, когда я пытаюсь выполнить этот код, я получаю эту ошибку:
Warning: move_uploaded_file(product_images/img_forest.jpg): failed to open stream: Permission denied in /opt/lampp/htdocs/suvenirshop/admin_area/insert_product.php on line 92
Warning: move_uploaded_file(): Unable to move '/opt/lampp/temp/phpZEJdEV' to 'product_images/img_forest.jpg' in /opt/lampp/htdocs/suvenirshop/admin_area/insert_product.php on line 92
Я использую xampp в Linux, я также пробовал этот код на ПК с Windows и Mac, где я получаю ту же ошибку.
Я должен упомянуть, что у меня есть папка product_images в папке, где я хранил insert_product.php который выполняет этот код.
Комментарии:
1.
Permission denied
проверьте разрешения дляproduct_images
2. Спасибо, что сработало, я изменил разрешения для папки, чтобы все было доступно для чтения и записи, и теперь это работает
Ответ №1:
Попробуйте предоставить разрешение на запись в папку product_images . В терминале перейдите к папке, в которой product_images папка, созданная cd
командой, а затем chmod a w product_images
командой в системах Linux