move_uploaded_file не удалось открыть поток и Permission denied error

Я пытаюсь загрузить файл, но я получаю следующие ошибки в моем браузере:

Warning move_uploaded_file(public/upload/udesignwptheme138.zip) [function.move-uploaded-file]: failed to open stream: Permission denied in <b>/home/monivbr/public_html/classes/system/Util.php on line 1803 Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move '/tmp/phpJtBlbi' to 'public/upload/udesignwptheme138.zip' in /home/monivbr/public_html/classes/system/Util.php on line 1803 

это мой php-класс, который делает загрузки на моем сервере:

  foreach ($files as $file) if($file['tmp_name'] != "" && $file['error'] != 4){ if($file['size'] < 10000000000){ $nome_antigo = $file["name"]; $novo_nome = strtolower(preg_replace("/[^a-zA-Z0-9_.]/", "", strtr($nome_antigo, "áàãâéêíóôõúüçÁÀÃÂÉÊÍÓÔÕÚÜÇ ", "aaaaeeiooouucAAAAEEIOOOUUC_"))); $query = $conexao->prepare('SELECT MAX(id) AS maxId FROM tbArquivo'); $query->execute(); $arquivo = $query->fetchObject(); $caminhoArquivo = 'public/upload/'; $nomeArquivo = substr($novo_nome, 0, strripos($novo_nome, '.')).$arquivo->maxId; if($idTipoArquivo == '6'){ //6 = arquivos xml de tradução $caminhoArquivo = 'public/traducao/'; $nomeArquivo = substr($novo_nome, 0, strripos($novo_nome, '.')); } $extensao = substr($novo_nome, strripos($novo_nome, '.')); 

Эта строка ниже – где находится ошибка:

 move_uploaded_file($file["tmp_name"],$caminhoArquivo.$nomeArquivo.$extensao); $query = $conexao->prepare("INSERT INTO tbArquivo (idTipoArquivo, idComplementar, idComplementar2, nomeArquivo, caminhoArquivo, tamanhoArquivo, extencaoArquivo, excluido) VALUES (:idTipoArquivo, :idComplementar, :idComplementar2, :nomeArquivo, :caminhoArquivo, :tamanhoArquivo, :extencaoArquivo, 0)"); $query->bindParam(":idTipoArquivo", $idTipoArquivo); $query->bindParam(":idComplementar", $idComplementar); $query->bindParam(":idComplementar2", $idComplementar2); $query->bindParam(":nomeArquivo", $nomeArquivo); $query->bindParam(":caminhoArquivo", $caminhoArquivo); $query->bindParam(":tamanhoArquivo", $file['size']); $query->bindParam(":extencaoArquivo", $extensao); $query->execute(); } } 

это мой файл .htaccess:

 php_value upload_max_filesize 30M php_value post_max_size 30M php_value max_input_time 6000000 php_value max_execution_time 6000000 php_value memory_limit 35M 

это переменная var_dump:

 var_dump($extensao); var_dump($file["tmp_name"]); var_dump($caminhoArquivo); var_dump($nomeArquivo); string(4) ".zip" string(14) "/tmp/phpKUpN24" string(14) "public/upload/" string(17) "udesignwptheme139" 

кто-то знает, что может быть неправильным?

Related of "move_uploaded_file не удалось открыть поток и Permission denied error"

Возможно, вы можете рассмотреть возможность изменения папки загрузки chmod 755 или 777

 chmod 777 folder_path 

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

Его из-за того, что у вас нет достаточного разрешения на папку. Измените это разрешение на чтение и запись. Это все !