2012-02-26 34 views
3

我正在建立一個網站的數據庫,將成爲產品的編目。 我遇到了圖像表的問題。我有一個php腳本,用三種尺寸調整圖像大小,用後綴重命名它們,將它們寫入目錄並在圖像表中添加引用。將縮略圖與mysql數據庫中的圖像相關聯的最佳方式是什麼?

我無法弄清楚縮略圖(小圖像)如何與大中型圖像相關聯,因爲我打算爲每種產品製作多個圖像。我希望能夠通過PHP腳本將所有縮略圖添加到頁面,並且鏈接到中等或較大的圖像。

這裏是我到目前爲止,

image-id product-id filename    size caption width height alt 
13  1   PassPro150_large.jpg large NULL  632 569  NULL 
14  1   PassPro150_medium.jpg medium NULL  250 225  NULL 
15  1   PassPro150_small.jpg small NULL  115 103  NULL 

有沒有做到這一點的標準方式?我應該製作三張表,每種大小一張,並將它們與主外鍵相關聯?我也認爲我可以用字符串處理來完成,用_large替換_small,因爲上傳的所有圖片都有相同的後綴。有什麼建議麼?

+1

另一列可能是'thumbnail-id'? – Ben 2012-02-26 06:09:52

回答

1

什麼約瑟夫說是一個解決方案。 或者您可以創建多個文件夾不同大小的縮略圖,如thumb_small,thumb_medium並將圖像保存在那裏,並使用相同的名稱。

你只需要在數據庫中保存文件名。當你需要顯示圖像時,你可以將URL調整到特定的文件夾。

+1

感謝您的建議,這是一個解決方案,但後來我失去了尺寸數據。 – 2012-02-26 05:54:23

+0

雖然我想我可以在同一行中記錄所有三組尺寸。 – 2012-02-26 06:02:15

+0

維護單獨的文件夾是額外的開銷。我建議讓他們在一個文件夾(節省您使用PHP創建文件夾的麻煩),並使用更好的文件名方案 – Joseph 2012-02-26 07:11:44

2

我想知道爲什麼要使用數據庫爲此目的在所有。

難道你不能只是添加一個單詞「小」的圖像名稱,並把它放在img標籤,以及預定義的維度?

+0

因爲我不想爲每個產品製作一個頁面,所以我將會有一個php腳本來創建所有產品的所有頁面。約有50種產品。 – 2012-02-26 05:29:46

+0

看來你不能得到你自己的問題的上下文。編輯我的答案,讓它更清晰。 – 2012-02-26 05:34:07

+0

感謝您的幫助,但我不理解您的觀點。一個php腳本如何找到一個圖像並將其連接到沒有數據庫的產品? – 2012-02-26 06:39:35

1
  1. 創建一個記錄圖像的表格。
  2. 一旦你上傳的圖片,重命名圖像對應於項目ID
  3. 要補充的,還追加這是什麼樣的形象數
  4. 使用PHP腳本來調整圖片的大小並添加作爲後綴的大小

現在你將有這樣的格式:

imageid_imagenumber_imagesize.jpg 

其中:

  • 圖像標識 - 對應於項目ID
  • 影像NUMBER - 從同一產品
  • IMAGESIZE的其他圖像區分開來 - 大小

地方他們的地方在您的網站的後綴,而你很好去。無需數據庫

爲圖像尺寸,以及其它元數據對圖像,瞭解更多關於getting the EXIF data using PHP

+0

圖像沒有預定義的尺寸,因爲某些圖像的水平尺寸較寬,而某些尺寸的垂直尺寸較大。 PHP腳本根據指定的區域調整大小,寬度中等但高度不同。 – 2012-02-26 05:46:35

+0

我已經有一個後綴,_small _medium和_large,計劃是有一個PHP腳本,可以找到特定產品的所有縮略圖,而無需我做任何事情,並鏈接到大或中等圖像,但問題是如何讓腳本鏈接到正確的大圖像。 – 2012-02-26 05:51:15

+0

更新了我的答案。現在完全沒有用於數據庫。 – Joseph 2012-02-26 07:10:05

相關問題