我正在尝试使用以下代码在php中move_uploaded_file:
if(is_uploaded_file($_FILES['fileupload2']['tmp_name'])){
move_uploaded_file($_FILES['fileupload2']['tmp_name'], "images/".$_FILES['fileupload2']['name']);
}
我有这个错误说:
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
我在终端尝试过但没有工作:
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
我仍然收到错误,我正在使用优胜美地,任何其他解决方案?
答案 0 :(得分:27)
答案 1 :(得分:2)
答案 2 :(得分:0)
为目标(上传)文件夹设置相同的权限
答案 3 :(得分:0)
通过更改权限来解决此问题,如avobe所述 并使目标文件夹位于运行应用程序的同一目录{Root而不是Home}
图片上传路径
/Applications/XAMPP/xamppfiles/htdocs/emp/files/admin_assets/addsdassets/targrt_Folder
运行应用程序的文件夹的路径
/Applications/XAMPP/xamppfiles/htdocs/emp/files/admin_assets/addsdassets/inser_db.php
答案 4 :(得分:0)
您可以在更改所有者后尝试保存图像的文件夹图像。它可能有用。
chown ownername:group folder;
你必须提供文件夹的绝对地址
答案 5 :(得分:0)
我在IIS上运行Yii2(Windows 10),我调整了路径并使其正常工作。请参阅下面的代码段:
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
]);
}
希望这有帮助。
答案 6 :(得分:-2)
申请
sudo chmod 777 images/
到文件夹/目录,它是用于存储图像的服务器文件夹。请检查哪个是您的文件夹。完全取决于您的选择。