2011-07-25 76 views
1

如果我使用動態CSS的PHP腳本(比如,不僅寫入CSS樣式表,而且由鏈接行代替樣式表調用),$ _REQUEST或任何類似的函數是否工作?我有問題,這似乎是爲什麼我的腳本保持故障的最接近原因 - 當查詢完整並分配給變量時,它可以很好地執行SQ​​L查詢,但是當我嘗試調用使用$ _REQUEST並以這種方式構建查詢,但失敗(儘管在其他非CSS相關腳本中調用時仍然完美)。

編輯:好吧,我只是想出了主要問題。看起來$ _GET適用於鏈接標記,即「href ='image.php?page = index'」。

但是,我希望能夠使用$ _REQUEST從URL中獲取某些內容,例如在非CSS相關腳本中如何使用它。有什麼辦法可以做到這一點?

+0

不知道你在說什麼,但很明顯,你可以使用$ _GET在你的CSS/PHP腳本 – Ibu

+0

是的,它應該工作 - 檢查你的web服務器的設置,確保所有重定向你可能如果使用GET,則使用保留查詢字符串。 – Orbling

+0

'$ _REQUEST'是一個變量,而不是函數。爲什麼不顯示你的一些代碼?儘可能最小,有意義的例子。 –

回答

2

是的,無論您使用腳本,所有這些超全球變量都可用。解釋器不知道腳本將輸出的數據類型。你的錯誤必須在代碼中的其他地方。你是否輸出正確的標題告訴瀏覽器它是css?

header('Content-Type: text/css');

+0

這個答案是正確的,但我會補充說,CSS腳本將始終由GET獲取,因此在這種情況下$ _POST將始終爲空。然而,變量本身將存在。 –

+0

是的,我有正確的標題。實際上,腳本始終有效,除非它位於搜索結果頁面上並調用腳本來組裝SQL代碼。彙編腳本在被搜索腳本調用時總能正常工作... – user365465

0
<link href="css.php?id=1&value=2" rel="text/css"> 

首先確保您在css.php文件

header('Content-Type: text/css'); 

現在,您可以訪問的查詢字符串指定標題:

$id = $_GET['id']; 
$value = $_GET['value']; 

例如:

body { 
<?php 
if ($id == 1) { 
    echo "background-color: red"; 
}else { 
    echo "background-color: yellow"; 
} 
?> 

這應該很好地工作

+0

好吧,我剛剛發現了主要問題。看起來$ _GET適用於鏈接標記,即「href ='image.php?page = index'」。 但是,我希望能夠使用$ _REQUEST從URL獲取某些內容,例如在非CSS相關腳本中如何使用它。有什麼辦法可以做到這一點? – user365465

+0

爲什麼你需要使用$ _REQUEST?告訴我你的情況 – Ibu