0

フォームを使用してファイル (画像) をサーバーにアップロードしています。同じ画像が 2 回アップロードされるのを防ぐにはどうすればよいですか?? 同じタイトルの画像が存在するかどうかを確認することはできません。同じ画像に異なるタイトルを付けたり、異なる画像に同じタイトルを付けたりすることができるからです。どんな助けでも大歓迎です。

4

1 に答える 1

3

ZombieHunter が提案するようなハッシュを作成します。なんで?画像が既に存在する場合、ハッシュの大きなテーブルを簡単かつ迅速に検索して確認できるためです。残念ながら、md5 や md5_file などのこのハッシュ メソッドはすべて、リモート ファイルではなく、既存のファイルに対して機能します。したがって、とにかくファイルをアップロードする必要があります。次にできることは、ファイルを保持するかどうかを決定することです。オンライン リソースからファイルを取得する場合、ヘッダーからファイル サイズを検出し、ダウンロードせずにハッシュを実行する方法があるかもしれませんが、これは特殊なケースです。

また、これらの画像に他のビジネス ロジックが関連付けられている場合、userHasImages や companyHasImages などの概念を使用して、それらを名前空間/フォルダー/タグで整理できるため、検索をさらに高速化できます。

データベースの厳密な重複エントリ防止の観点から、ハッシュを含む列には一意のインデックスを使用します。

于 2012-06-15T06:53:55.650 に答える