2012-07-31 73 views
1

我正在設置我的網站以使用include()聲明來標準化頁眉,頁腳和導航等內容。如何使include()文件與不同的PHP文檔相關聯?

include('header.php);

然而,當我使用在兩個不同的目錄頁相同的頭文件,包含在header.php突破,如相關鏈接:

的header.php
<a href="images/dog.jpg">

指數.php
include('header.php);
變成
<a href="images/dog.jpg">

這是可行的,因爲這是從index.php文件到dog.jpg的正確路徑。

動物/ canine.php
include('header.php);
成爲
<a href="images/dog.jpg">

這不起作用,因爲動物/圖片/ dog.jpg不存在。

所以,我的問題是,我可以在header.php文件中更改哪些內容,以便在包含header.php的情況下將url設置爲dog.jpg以同時在index.php和animals/canine.php中工作?

回答

7

更改包括使用絕對路徑:

<a href="/images/dog.jpg"> 

這樣,它們會根據自己網站上的根,並始終指向正確的文件夾中。

+1

棒極了!我正在使用Dreamweaver來執行我的ftp,但我不確定是否檢查index.php的'上載依賴文件'是否會將header.php中的鏈接圖像識別爲相關文件或外部鏈接(必須手動上傳從頁面)。原來,Dreamweaver在上傳時執行了include()並將鏈接的圖像識別爲依賴文件。一切都很好!! – ageadvert 2012-07-31 21:24:03

1

創建一個名爲$root_path的新變量,並將其放入相對於您所在頁面的網頁目錄根目錄的路徑。確保它的聲明,你包括的header.php

之前,這是mysite.com/junk/index.php那麼你的形象資產是../images/

<?php 
$root_path = '../' 
include('header.php'); 

當輸出你的資產的URL,把$root_path在它的前面。

相關問題