2012-07-04 26 views
1

目前我有多個選擇標籤有幾乎相同的選項選擇,我現在所做的是使用file_get_contents獲取選項標籤的值,並將它們分配給選擇標籤。但我想創建一個更有效的方法來做這件事,因爲當我試圖在file_get_contents文件中添加一個if條件來過濾出一些額外的選項標籤時,應該只對某些選擇標籤可用,它不起作用。所以我想知道什麼是最好的方法呢?更有效的方式分配相同的選項標籤到多個選擇標籤

基本上我使用file_get_contents來獲取包含基本選項標籤的文件並將它們分配給選擇標籤。

感謝 -magician

規範一些:

some.php

<option>1</option> 
<option>2</option> 
... you get the picture 

其他files.php

<select> 
$hello = file_get_contents("some.php"); 
echo $hello; 
</select> 
現在

當我在一些添加條件.php即

如果($右= 1){ 這 僅此頁 }

//這不工作,而不是它,它會顯示所有選擇標籤。

+0

您的代碼是什麼看起來像?你的數據文件是什麼樣的?沒有這些細節,你的問題有點含糊。 – curtisdf

+1

你有沒有想過在客戶端做任何事情來實現這一目標?使用javascript? 也有在file_get_contents偏移選項,你可以使用...雖然我接受它是有限的使用您的上下文 – redDevil

+0

嗯。 JavaScript的。我認爲有一種方法,但我不知道它是什麼。我現在所做的是手動添加那些其他選項到他們指定的選擇標籤,但是這樣做會破壞擁有一個通用選項標籤頁的想法,以便您可以在那裏編輯它而不用觸及所有使用它的代碼。 – magicianiam

回答

2
在我看來

,的file_get_contents使用從靜態文件(如txt文件)中檢索數據,將其存儲到字符串中並進行進一步處理。

要達到什麼樣的你正在嘗試做的,你就需要使用include指令,因爲你顯然希望從第一頁變量可用在第二頁

由於手工狀態下的if聲明,「當包含文件時,它包含的代碼將繼承包含所在行的變量範圍,調用文件中該行可用的任何變量將在被調用文件中可用」

1

你需要告訴文件生成選項你想要什麼樣的選項,並使用查詢字符串。

所以,先有這樣的:

<!-- basic set of options --> 
<select> 
$hello = file_get_contents("some.php?o=basic"); 
echo $hello; 
</select> 

<!-- advanced set of options --> 
<select> 
$hello = file_get_contents("some.php?o=advanced"); 
echo $hello; 
</select> 

<!-- ... you get the picture ... --> 

然後在此查詢字符串變量,並根據它的PHP代碼檢查輸出正確的選項:

echo "<option>1</option>" 
echo "<option>2</option>" 
if ($_GET['o']=="advanced") 
{ 
    echo "<option>3</option>" 
    echo "<option>4</option>" 
    echo "<option>5</option>" 
} 
+0

是真的,我爲什麼沒有想到這一點。謝謝。 – magicianiam