在網頁開發中,常常需要用到圖片或者其他資源文件。通常我們會將這些文件存儲在服務器上,并從服務器獲取資源的絕對或相對路徑。如果使用絕對路徑,那么每次更改服務器地址或者根目錄都需要更改項目中所有引用該資源的代碼,這十分麻煩。相對路徑則可以解決這個問題。
MySQL中存儲相對路徑并不難,只需要在數據庫中為每個資源指定一個相對于頁面或根目錄的路徑即可,如assets/img/example.jpg
。但是,在引用資源時需要保證相對路徑的正確性,最好是將資源路徑存儲在數據庫之外的一個配置文件中,這樣便于維護。
以下是一個存儲相對路徑的MySQL數據表的結構示例:
CREATE TABLE `resources` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(50) NOT NULL, `path` varchar(255) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
這個數據表包含三個字段,分別是資源的ID,名稱和相對路徑。可以根據自己的需求隨意增加或刪除字段。
在PHP中,我們可以使用PDO或mysqli等方式連接MySQL并進行增刪改查操作。獲取數據并引用資源時,可以先從數據庫中獲取資源的相對路徑,然后結合頁面或根目錄構造出完整的相對路徑。
//假設數據庫連接已經建立,在這里不再贅述 //獲取資源路徑 $sql = "SELECT path FROM resources WHERE id = ?"; $stmt = $pdo->prepare($sql); $stmt->execute([$id]); $path = $stmt->fetchColumn(); //構造完整的相對路徑(假設站點根目錄為'/example/') $fullPath = "/example/" . $path; //在頁面中引用資源 echo "";
以上代碼演示了獲取并引用圖片資源的過程。類似的操作也適用于CSS,JavaScript等文件的引用。
綜上,存儲圖片相對路徑在MySQL中并不復雜,但是在實際開發中需要謹慎操作,注意維護。同時,也需要根據自己的需求和實際情況做出適合自己的存儲和引用方案。
上一篇mysql 存在
下一篇mysql 存儲漢字