ここでコードを使用しています: http://net.tutsplus.com/tutorials/php/how-to-use-amazon-s3-php-to-dynamically-store-and-manage-files-with-ease/
...ログイン時に個人使用のために写真をアップロードするユーザー用のバケットとサブディレクトリを作成します。
写真が s3 サーバーに正常にアップロードされると、次のようにリストの html ファイルに表示されます。
<ul id="sortable-list">
<?php
$i = 0;
$contents = $s3->getBucket("bucket_name");
foreach($contents as $file)
{
$fname = $file['name'];
$furl = "http://bucket_name.s3.amazonaws.com/".$fname;
echo "<li class=\"default\"><img src=\"$furl\" width=\"100\"></li>";
{
$i = 0;
}
}
?>
</ul>
何らかの理由で、サブフォルダーはバケット内のファイルとして認識され、 as の最初の要素を埋めます$contents
がhttp://bucket_name.s3.amazonaws.com/subfolder/
、もちろんファイル名を参照せずに空です。
私が使用している php は、上記の tutsplus.com チュートリアルの page.php を修正したものです。バケットとサブディレクトリの作成に関連するコードは次のとおりです。
if(isset($_POST['Submit'])){
$fileName = $_FILES['theFile']['name'];
$fileTempName = $_FILES['theFile']['tmp_name'];
$folderName = "subfolder/$fileName";
$s3->putBucket("unique_id", S3::ACL_PUBLIC_READ);
if ($s3->putObjectFile($fileTempName, "unique_id", $folderName, S3::ACL_PUBLIC_READ)) {
echo "<strong>We successfully uploaded your file.</strong>";
}else{
echo "<strong>Something went wrong while uploading your file... sorry.</strong>";
}
}
サブフォルダーがファイルとして認識されないようにし、表示内に要素を作成する方法を理解するのに助けが必要です。どうもありがとう