PHPでディレクトリにファイルをアップロードできませんでした。私は以下のコードを説明しています。PHPを使用して画像をフォルダにアップロードできませんでした
$_FILES=array('picture'=>array('name' => 'IMG-20161121-WA0000.jpg','type' => ' image/png','tmp_name' => '/tmp/phpSb6a53', 'error' => 0, 'size' => 119198));
$imageFieldName = 'picture';
$imagePath = "admin/uploads/";
uploadImage($_FILES,$imageFieldName,$imagePath,function($image){
print_r($image);exit;
}
public function uploadImage($files, $imageFieldName, $imageDirPath, $callback) {
$result = array();
;
$imageName = generateRandomNumber() . '_' . $_FILES[$imageFieldName]['name'];
// echo($_FILES[$imageFieldName]['tmp_name']);exit;
$target_dir = $imageDirPath;
$target_file = $target_dir . basename($imageName);
$uploadOk = 1;
$imageFileType = pathinfo($target_file, PATHINFO_EXTENSION);
if (file_exists($target_file)) {
$result['msg'] = "Sorry, file already exists.";
$result['num'] = 0;
$callback($result);
$uploadOk = 0;
}
if ($_FILES[$imageFieldName]["size"] > 500000) {
// echo 'fileSize';exit;
$result['msg'] = "Sorry, file size is large.";
$result['num'] = 0;
$callback($result);
$uploadOk = 0;
}
if (($imageFileType != "jpg" && $imageFileType != "JPG") && $imageFileType != "png" && $imageFileType != "jpeg") {
$result['msg'] = "Sorry, only .jpg,.jpeg and .png files are allowed.";
$result['num'] = 0;
$callback($result);
$uploadOk = 0;
}
if ($uploadOk == 0) {
$result['msg'] = "Sorry, Your file could not uploaded.";
$result['num'] = 0;
$callback($result);
} else {
if (move_uploaded_file($_FILES[$imageFieldName]['tmp_name'], $target_file)) {
$result['msg'] = "Image has uploaded successfully.";
$result['num'] = 1;
$result['img'] = $imageName;
$callback($result);
} else {
$result['msg'] = "Sorry, Your Image could not uploaded to the directory.";
$result['num'] = 0;
$callback($result);
}
}
}
ファイルを選択した後、私は、入力として
$_FILES=array('name' => 'IMG-20161121-WA0000.jpg','type' => ' image/png','tmp_name' => '/tmp/phpSb6a53', 'error' => 0, 'size' => 119198);
を取得しています。
しかし、私は、メッセージ
`アレイ取得しています([MSG] =>申し訳ありませんが、あなたのイメージが ディレクトリにアップロードされませんでした。[NUM] => 0)
しばらくprint_r。ここで私はフォルダに画像をアップロードする必要があります。私を助けてください。
ターゲットディレクトリが書き込み可能かどうかを確認します。 –
@RomaRush:はい、書き込み可能です。 – subhra
私はこのようなディレクトリパスを持っています。 'API/normaluser.php'はfileuploadコードを使用しています。' admin/uploads/'フォルダをアップロードします。一つのルートフォルダ内と' admin'フォルダの 'upload'フォルダ内に' APIとadmin'フォルダがあります私はどこに画像をアップロードする必要があります。 – subhra