问题
While i am trying to move_uploaded_file in php with following code :
if(is_uploaded_file($_FILES['fileupload2']['tmp_name'])){
move_uploaded_file($_FILES['fileupload2']['tmp_name'], "images/".$_FILES['fileupload2']['name']);
}
I've got this error saying:
Warning: move_uploaded_file(images/VIDEO_TS.VOB): failed to open stream: Permission denied in /Applications/XAMPP/xamppfiles/htdocs/Week3/Lesson2/do_upload.php on line 24
i tried in the terminal and didn't work:
sudo CHMOD 775 /Applications/XAMPP/xamppfiles/htdocs/Week3/Lesson2/do_upload.php
sudo chmod -R 0755 /Applications/XAMPP/xamppfiles/htdocs/Week3/Lesson2/do_upload.php
sudo chown nobody /Applications/XAMPP/xamppfiles/htdocs/Week3/Lesson2/do_upload.php
I am still getting the error and i am using Yosemite, any other solution ?
回答1:
My solution was to give the permission for the images folder and the php file, by going to the file > Right click > Get info > and then change all the permissions to read&write
as the following picture.
回答2:
Set the same permission for your target(uploading) folder
回答3:
This problem solved by changing permission as described avobe and making the target folder in the same directory {Root rather than Home } in which application is running
path for image upload
/Applications/XAMPP/xamppfiles/htdocs/emp/files/admin_assets/addsdassets/targrt_Folder
path of folder in which application is running
/Applications/XAMPP/xamppfiles/htdocs/emp/files/admin_assets/addsdassets/inser_db.php
回答4:
You can try after changing owner for the folder images where you are saving the images. It may work.
chown ownername:group folder;
you have to give absolute address of the folder
回答5:
I was running Yii2 on IIS (Windows 10) and I tweaked the path and got it working. See code snippet below:
if($model->load(Yii::$app->request->post())) {
$image = UploadedFile::getInstance($model, 'image');
$model->image = $image->getBaseName().'.'.$image->extension;
if($model->save()) {
$image->saveAs('uploads/'.$model->image);//Notice the path change here
return $this->redirect(['view', 'id' => $model->ID]);
}
}
else {
return $this->render('update-image', [
'model' => $model
]);
}
Hope this helps.
回答6:
apply
sudo chmod 777 images/
to the folder/directory which is your server folder to store images. Please check which is your folder. Totally depends on your choice.
来源:https://stackoverflow.com/questions/31915957/move-uploaded-file-failed-to-open-stream-permission-denied-mac