2016-08-12 77 views
2

错误,当我使用CI上传S3文件,我得到了错误信息Message: S3::inputFile(): Unable to open input file:filename.jpgS3上传笨

这里是我的代码

$time = Time(); 
if(!empty($_FILES['productImage']['name'])){ 
$file_name  = $_FILES['productImage']['name']; 
$productImageName = 'PRD_'.$time.$_FILES['productImage']['name']; 
if ($this->s3->putObjectFile($file_name, "bucketname", $productImageName, S3::ACL_PUBLIC_READ)) { 
    echo "We successfully uploaded your file.";exit; 
}else{ 
    echo "Something went wrong while uploading your file... sorry.";exit; 
} 
} 

回答

0

海我使用CI在S3上传文件中的另一个解决方案。在这里,我共享代码。它将从GitHub的人在未来

代码有所帮助:https://github.com/fcosrno/aws-sdk-php-codeigniter

而且我的代码:

$this->load->library('aws_sdk'); 
try{ 
    $aws_object=$this->aws_sdk->saveObject(array(
    'Bucket'  => 'mybucket', 
    'Key'   => 'QA/product/'.$newImagename, 
    'ACL'   => 'public-read', 
    'SourceFile' => $_FILES['productImage']['tmp_name'], 
    'ContentType' => 'image/jpeg' 
))->toArray(); 

}catch (Exception $e){ 
    $error = "Something went wrong saving your file.\n".$e; 
    echo $error; 
}