2011-12-10 5 views
-1

私はユーザーが画像をアップロードできる基本的なソーシャルウェブサイトを構築しています。私はファイルシステムに画像を保存するつもりです。ユーザーが画像をアップロードすると、どのようにファイルの名前を付けるべきだと思いますか?私は単純に絵の連続番号にラベルを付けるのではなく、* userid_dateinseconds_width.jpg *について考えていました。ソーシャルウェブサイトの画像を体系的に保存する

また、データベース内の各写真に関する情報(所属者、フォトアルバムの種類など)を保存する必要があります。そうするためにデータベーステーブルをどのように構成することをお勧めしますか?

+0

注意:オペレーティングシステムでは、ディレクトリに固定量のファイルしか置くことができません。私の関連する質問も参照してください:http://stackoverflow.com/questions/5851189/naming-convention-uploaded-files – PeeHaa

答えて

0

個人的には、これを構造体として使用します。可能であれば、それを標準に保つためにプロフィール写真があれば私はイメージのサイズを変更します! userid_imageid_datetime.jpg

をしかし、これは私だけです:

id  autoincrement 
u_id  id of user it belongs to 
album_id id of the album it belongs to (or name) 
datetime date and time of pic upload 
path  path of where its kept, if its a directory structure 

width  if you need to 
height if you need to 

また、ファイル名のために、私が使用します!

0

私はNateradeの答えが気に入っていますが、私が目にする懸念が1つあります。このようにファイルに名前を付けると、システムの内部(使用しているID)がイメージを表示できるすべての人に公開されます。 FacebookはユーザーIDが画像パスの一部であるように画像の名前を付けていました。その結果、誰かがFacebookの画像を保存して再投稿した場合、絵。私はそのような命名計画を提案するが、それからそれをハッシュに置く。

ハッシュを使用すると、ディレクトリ内のファイル数が限られているというPeeHaaの問題を回避できます。ファイル名をハッシュして、最初の文字か2文字をディレクトリとして取り、イメージの数に応じて26または26^2ディレクトリの間で合理的に等しくイメージを分割することができます。がんばろう。

+0

これはまだFacebookが行います。 –