it-roy-ru.com

move_uploaded_file не удалось открыть поток: в доступе отказано - Mac

Пока я пытаюсь переместить файл_файла в php с помощью следующего кода:

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 

Я все еще получаю ошибку, и я использую Yosemite, любое другое решение?

11
AaoIi

Мое решение состояло в том, чтобы дать разрешение для папки с изображениями и php-файла, перейдя в файл> Щелкните правой кнопкой мыши> Получить информацию>, а затем измените все разрешения на read&write, как показано на следующем рисунке.

 enter image description here

27
AaoIi

Я запускал Yii2 на IIS (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
    ]);
}

Надеюсь это поможет.

0
user2288580

Эта проблема решена путем изменения разрешения, как описано в 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
0
UserszrKs

Вы можете попробовать после смены владельца для папки изображений, где вы сохраняете изображения. Это может сработать.

chown ownername:group folder;

вы должны дать абсолютный адрес папки

0
Ravi Kumar Yadav

Установите такое же разрешение для вашей целевой (загружаемой) папки

0
ManiMuthuPandi