2010-08-24 6 views
0

Я загружаюсь в папку 777 разрешений. Однако загрузка загружается, однако загруженные файлы имеют 664 разрешения и «Владелец» «никто».Загрузка изображения с PHP, как установить права доступа к файлам

Как я могу изменить следующий сценарий, чтобы загрузить файлы как 777 и установить владельца?


код приходит из файла upload.php Plupload в

if (strpos($contentType, "multipart") !== false) { 
    if (isset($_FILES['file']['tmp_name']) && is_uploaded_file($_FILES['file']['tmp_name'])) { 
     // Open temp file 
     $out = fopen($targetDir . DIRECTORY_SEPARATOR . $fileName, $chunk == 0 ? "wb" : "ab"); 
     if ($out) { 
      // Read binary input stream and append it to temp file 
      $in = fopen($_FILES['file']['tmp_name'], "rb"); 

      if ($in) { 
       while ($buff = fread($in, 4096)) 
        fwrite($out, $buff); 
      } else 
       die('{"jsonrpc" : "2.0", "error" : {"code": 101, "message": "Failed to open input stream."}, "id" : "id"}'); 

      fclose($out); 
      unlink($_FILES['file']['tmp_name']); 
     } else 
      die('{"jsonrpc" : "2.0", "error" : {"code": 102, "message": "Failed to open output stream."}, "id" : "id"}'); 
    } else 
     die('{"jsonrpc" : "2.0", "error" : {"code": 103, "message": "Failed to move uploaded file."}, "id" : "id"}'); 
} else { 
    // Open temp file 
    $out = fopen($targetDir . DIRECTORY_SEPARATOR . $fileName, $chunk == 0 ? "wb" : "ab"); 
    if ($out) { 
     // Read binary input stream and append it to temp file 
     $in = fopen("php://input", "rb"); 

     if ($in) { 
      while ($buff = fread($in, 4096)) 
       fwrite($out, $buff); 
     } else 
      die('{"jsonrpc" : "2.0", "error" : {"code": 101, "message": "Failed to open input stream."}, "id" : "id"}'); 

     fclose($out); 
    } else 
     die('{"jsonrpc" : "2.0", "error" : {"code": 102, "message": "Failed to open output stream."}, "id" : "id"}'); 
} 

ответ

0

Скорее всего, вы не сможете изменить владельца файлов, так как это было бы идентификатор пользователя веб-сервер-х работа внизу. Вы можете попробовать, используя chown(), хотя, скорее всего, вы можете изменить только право собственности на группу (используя chgrp()). Изменение разрешений осуществляется через chmod().

+0

звонок chmod() впоследствии отлично поработал, спасибо marc – Haroldo

Смежные вопросы