2011-09-01 42 views
0

可能重複:
Storing Images in DB - Yea or Nay?PHP用戶頭像

我建立在其中用戶可以上傳自己的頭像系統。我發現有兩種方法可以實現這一點 - 將圖像存儲到數據庫中或將實際路徑存儲到數據庫中,並將圖像保存到硬盤上。我想知道哪些方法可以使用。那麼他們哪一個更好,我們應該選擇哪一個?

+0

爲什麼你不檢查這個討論,它與你的問題是一樣的:http://stackoverflow.com/questions/3748/storing-images-in-db-yea-or-nay – Tarik

回答

1

正常的方式做到這一點是:第二個,它是在DB太大的壓力是存儲完整的圖像作爲BLOB,只要在您的Webroot的圖像和路徑保存在你的數據庫表

0

我不會將這些圖像存儲在數據庫中,正如8vius所指出的那樣,這對數據庫來說過於緊張。您可以通過某種邏輯算法來檢索圖像,而不是將路徑存儲在數據庫中。例如,如果您的用戶具有唯一標識符,則可以使用該標識符來構建圖像的路徑。所以如果你的用戶有id 1080,那麼路徑就像是/avatars/1080.png

順便說一句,你是否熟悉gravatar.com?如果它適合您的需求,它將爲您節省自己構建功能的麻煩。

0

兩種方式都可以正常工作。在我看來,這更像是一個組織問題。例如,如果您的數據位於數據庫中,那麼您可以將數據一次性備份到數據庫中,但實際上它們有點像應變一樣 - 但這是一個優勢。