如何从S3中删除

时间:2011-06-30 09:16:45

标签: php mysql amazon-s3

我有一个PHP文件上传脚本,用于将文档放到S3上,到目前为止,用户可以从SQL列表中删除该文件,但不能直接从S3删除。它们是一种简单的方法,我可以将S3中的删除添加到与下面相同的代码中

php脚本的其余部分包括s3.php,如果有帮助的话

$bucket = 'files';
$path = 'file/'; // Can be empty ''
if (isset($_GET['id']))
{
    $id = $_GET['id'];
    $path .= 'File'.$id.'/';
    if (isset($_GET['action']))
    {
        $action = $_GET['action'];
        if ($action = "deleteFile")
        {
            $Fileid = $_GET['Fileid'];
            $query = "DELETE FROM amazon_upload WHERE Upload_File_Id='".$Fileid."'";
            $result = mysql_query($query);
            if (!$result)
            {
                die ("could not query database: <br />".mysql_error());
            }
            $locationHeader = "Location: http://www.website.com/upload.php?id=".$id;
            header($locationHeader);
        }
    }
}

2 个答案:

答案 0 :(得分:2)

这很好用

$s3 = new AmazonS3();

$bucket = 'velobucket';
$folder = 'mydirectory/';

$response = $s3->get_object_list($bucket, array(
   'prefix' => $folder
));

foreach ($response as $v) {
    $s3->delete_object($bucket, $v);
}

答案 1 :(得分:-3)

尝试使用

取消链接()

E.G

$file = "test.txt";
if (!unlink($file))
  {
  echo ("Error deleting $file");
  }
else
  {
  echo ("Deleted $file");
  }