0

私は自分のウェブサーバーの特定のフォルダにファイルをアップロードできるプログラムを持っています。今やりたいことは、ユーザーがそのファイルに自動的にアクセスできるようにすることです。そのため、ファイルをアップロードした後、ウェブページにリストされます。ダウンロードできるようになります。とにかくこれが可能になることはありますか?結果が満たされる限り、任意の JavaScript または php を使用できます。事前に感謝します。

ユーザーがファイルをアップロードしたフォルダーの内容を Web ページに自動的に一覧表示して、ダウンロードできるようにしたいと考えています。インデックスは必要ありませんが、Web ページ内の実際のリストが必要です。ファイルを google docs にアップロードしたときと同じように、後で自動的に一覧表示されてダウンロードされます。

4

3 に答える 3

0

アップロードされたすべてのファイルのファイル パスをデータベースに保存します。ユーザーがアップロードした全ファイルの一覧を ajax で取得し、リアルタイムで表示できます。Google は ajax を使用して、あなたが説明していることを達成していると思います。

于 2012-10-05T04:49:42.950 に答える
0

scandirのようなものを使いたいようです。渡すディレクトリは絶対サーバー パスである必要があることに注意してください。これは、実際のページ リンクを形成するために使用される www ルートとは異なります。

したがって、index.php とその隣に /images/ ディレクトリがある場合、次のようなものが必要になります。

$images_directory = "/images/";
$path_to_files = dirname(__FILE__) . $images_directory;

$dir_contents = scandir( $path_to_files );

次に、ディレクトリの内容をフィルタリングして、画像のみを表示することをお勧めします。

$images = preg_grep("/(?i).(gif|jpg|png)$/", $dir_contents);

画像の配列ができたので、あとは html リンクをフォーマットするだけです。

foreach( $images as $image ){
    $file = $image_directory . $image;
    echo "<a href='$file'>$image</a>";
}

とはいえ、これは非常に盲目的な方法です。状況によっては確かに便利ですが、ユーザーごとに画像を制限したり、名前/説明/タグなどの画像情報を保存したい場合は、アップロード時にディレクトリをデータベースに保存するだけでよいでしょう。

于 2012-10-05T05:27:54.370 に答える
0

ファイルをアップロードするときは、パスとファイル名をデータベースに保存します。アップロードが成功した後、ajax を介してファイル名を取得し、ファイルを表示します。ダウンロードするときに、db からファイル名とパスを取得し、見つかった場合はディレクトリを検索して、クライアント マシンにダウンロードします。

于 2012-10-05T05:28:28.843 に答える