Skip to content
Advertisement

move_uploaded_file() failed to open stream: no such file or directory

I’ve done your standard checks (is the directory there, are lax enough permissions set), and I’m pretty sure I’ve covered your standard stupid human tricks. Here’s the code that’s failing:

move_uploaded_file($_FILES['image1']['tmp_name'], "/public_html/flashsale/assets/img/products/T".$_FILES['image1']['name']);

The directory is there – I copied the path from FileZilla. I even set the permissions to 777, both in FileZilla and in the file manager on the HostGator control panel. This code generates two warnings:

Message: move_uploaded_file(/public_html/flashsale/assets/img/products/Tsirloin.jpg) [function.move-uploaded-file]: failed to open stream: No such file or directory

Message: move_uploaded_file() [function.move-uploaded-file]: Unable to move ‘/tmp/phpI5GZ3S’ to ‘/public_html/flashsale/assets/img/products/Tsirloin.jpg’

In that order. So, the file is being uploaded, the directory exists and is set to 777, what else could I be missing?

Advertisement

Answer

you do not need to put the full directory to the file. try to remove /public_html/flashsale/ from your link and see if that will work. In addition, the file does not need to have 777 permission, I myself upload files to folders with 755 permissions.

also, you can use getcwd(); in the directory your aiming to. the function will give you the directory that you need to use for moving your file. source

User contributions licensed under: CC BY-SA
8 People found this is helpful
Advertisement