2009-12-29 79 views
0

我想將圖片上傳到服務器上的目錄。我使用的教程是http://www.reconn.us/content/view/30/51/(php) - 幫助編寫上傳圖片的腳本

首先,是使用PHP上傳圖片的好方法嗎?

其次,我也要將信息存儲在MySQL數據庫中。處理與用戶上傳的名稱相同的圖像的好方法是什麼?例如,如果用戶在一行中上傳文件「test.png」2x,第二個文件名會發生什麼情況?從上面的腳本中,兩者都會得到唯一的文件名,但我將如何再次訪問該映像?我不能只是查詢,因爲我知道的唯一名稱是我給它的重複名稱,我絕對不知道服務器使用上傳時間給它的唯一名稱...

三,什麼是圖像的最大文件大小?

回答

1

您可以在上傳後向用戶報告唯一的URL,以便用戶知道在哪裏可以找到圖像。因此,第一個test.png可能是http://www.example.com/images/fjdklagjsdl.jpg,第二個可能是http://www.example.com/images/jklfsdlkj.jpg

您還可以爲用戶提供某種界面以查看他們上傳的圖像。如果在圖像的唯一文件名旁邊顯示上傳圖像的縮略圖,用戶將很容易識別哪個圖像是哪個圖像。

0

這是方法我用:

  1. 用戶上傳圖片

  2. 服務器具有獨特的(GUID或東西),文件名和保存保存圖像 - 無論 - 獨特生成的文件名和原始上傳的文件名在數據庫中

  3. 將圖像鏈接到使用original_filename,unique_filename或primary_key作爲images表。

圖像取自服務器,並使用存儲在數據庫中的原始文件名提供。這樣可以避免文件名衝突的機會,並保留圖像的原始文件名。此外,這允許您在original_filename列上構建搜索以供用戶使用。

使用此方法,唯一的文件名不必暴露給用戶,而是用於查找與'圖像'表中的特定idoriginal_filename相關聯的圖像。

當然,如果您不關心在顯示圖像時將原始文件名提供給圖像,只要您想存儲該圖像就可以生成一個唯一的文件名。