2010-03-14 14 views
5

忍受我,因爲我試圖瞭解更多關於.htaccess重定向規則 - 我是一個專業的UI人,我正在做我的最好提高我的編碼技能除HTML/CSS/PHP等之外的其他語言使用htaccess重寫/重定向,以便單個PHP文件可以根據GET/POST變量顯示數據

所以,我所擁有的是一個包含菜單的index.php文件 - 非常簡單。如果用戶計算機上啓用了Javascript,那麼表單將使用簡單的jQuery好東西顯示在菜單下面,每個鏈接都有一個「返回false」;應用。

我想要做的是讓頁面訪問與JS關閉,所以而不是重定向用戶到不同的頁面,我想使用POST或GET變量從每個鏈接,以顯示各種形式。 。同樣的index.php文件中 - 但有URL反映菜單選項

下面是使用名爲菜單項的例子 - Form 1和Form主頁,關於,:

隨着JS上,點擊的上面的示例按鈕只是將表單或包含數據的頁面滑動到頁面上。

在JS關閉的情況下,如果用戶點擊'關於'鏈接,我想重寫URL爲http://domain.com/about - 但將用戶保留在index.php頁面上(因爲它是唯一的頁面)並且能夠使用POST或GET變量來顯示使用PHP。

因此,訪問http://domain.com/index.php?page=about 會在網址中顯示 http://domain.com/about但通過GET變量「頁面」的index.php文件。

希望是有道理的..我相信有很多方法可以實現這個目標,所以如果你對如何提高它的想法,無論如何,我很樂意聽到它!

再次感謝 復活

回答

7

mod_rewrite

RewriteEngine on 
RewriteBase/
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^(.+)$ /index.php?page=$1 [L] 
+0

我嘗試這樣做......但現在的CSS文件不會加載..任何想法? 這裏是另一個我擺弄:! RewriteEngine敘述在 RewriteBase/ 的RewriteCond%{} REQUEST_FILENAME -f#忽略任何現有文件 的RewriteCond%{} REQUEST_FILENAME -d#忽略任何現有目錄 重寫規則。 /index.php [L] – revive 2010-03-14 04:49:08

+0

是的,我的意思是'%(REQUEST_FILENAME)'。固定。 – 2010-03-14 04:58:43

+0

gotcha ..好的,我測試了它的變化和沒有骰子。 /localhost/proj/name/index.php?page=test3 並嘗試: http:// localhost/proj/name/test3 但它說: 在此服務器上未找到請求的URL /index.php 。 想法? – revive 2010-03-14 05:06:56