2016-09-29 19 views
0

AWSサーバー上にファイルをアップロードするコードがあります。今日まではうまくいっていたので、AWSサーバーからすべてのコードを削除し、最新のコードをアップロードすることにしました。誰かがエラーを見つけてください。PHPファイルアップロードがAWSサーバー上で動作しない - mkdirがfalseを返す

少しデバッグしようとしましたが、mkdir(...)関数がfalseを返すことがわかりました。私はなぜそれが偽を返すのか分からない。私は私の "アップロード"フォルダ(drwxrwxr-x)にすべての権限を持っています。私はまた、私のフォームにenctype = "multipart/form-data"を使用しています。

誰かが正しい方向に私を指摘できますか?私は残りをします。

ありがとうございました。助けてください!

$uniqueKey = md5(microtime(true)).uniqid(); 
$ret = array(); 

function makedir($dir){ 
    if (!is_dir($dir) && strlen($dir)>0){ 
     mkdir($dir, 0777, true); 
     chmod($dir, 0777); 
    } 
} 

$output_dir = "../uploads/".$uniqueKey."/"; 
makedir($output_dir); 

if(isset($_FILES["myfile"])){ 
    $error =$_FILES["myfile"]["error"]; 
    $ret['unique'] = $uniqueKey; 
    $ret['error'] = $error; 

    if(!is_array($_FILES["myfile"]["name"])){ 
     $fileName = $_FILES["myfile"]["name"]; 
     move_uploaded_file($_FILES["myfile"]["tmp_name"],$output_dir.$fileName); 
     $ret[]= $fileName; 
    }else{ 
     $fileCount = count($_FILES["myfile"]["name"]); 
     for($i=0; $i < $fileCount; $i++){ 
      $fileName = $_FILES["myfile"]["name"][$i]; 
      move_uploaded_file($_FILES["myfile"]["tmp_name"][$i],$output_dir.$fileName); 
      $ret[]= $fileName; 
     } 
    } 
} 
echo json_encode($ret); 

答えて

0

権限です。私はdrwxrwxr-xからdrwxrwxrwxに私のフォルダの許可pfを変更し、それは働いた。

関連する問題