2013-10-10 90 views
0

這是我第二次問到這裏。我會盡力讓你更容易回答。這種情況背後應該是什麼代碼?

這是關於改寫規則的一切。首先,看看下面:

以下4個PHP腳本涉及到我的php登錄腳本的帳戶管理。

  1. account.php
  2. 的login.php
  3. signup.php
  4. logout.php

更多關於腳本的詳細信息:

  1. Accout.php有4-5頁基於GET請求。例如。 ?page = edit,?page = view等

  2. Login.php只有2個頁面,?action = login和?action = block。

  3. Signup.php有3個頁面?page = process,?page = process & step = 1,2。

  4. logout.php只有一個頁面。

這是我的腳本的一部分。現在我有興趣重寫這個醜陋的網址。我希望所有的頁面都有'賬戶'前綴。

  1. 帳戶/編輯
  2. 帳戶/視圖
  3. 帳戶/登錄
  4. 帳戶/登錄/阻斷
  5. 帳戶/創建
  6. 帳戶/創建/步驟/ 1
  7. 帳戶/創建/步驟/ 2
  8. 帳戶/註銷

我想我已經盡我所能清除了我的問題。我嘗試了很多,但失敗了。我希望你們對我的回答是「我怎麼能這樣做?」或者「這種情況背後的代碼是什麼?」

請,我真的很需要你的幫助。

[編輯]

感謝您的支持@JonLin。非常感謝。但我需要你的幫助。我希望如果你在這裏幫助我可以做別人。

現在我有,

  1. forum.php?FID = 1個& P = 2
  2. thread.php?TID = 1個& P = 2

(其不僅1或2,其[(0-9)+])

如何去做這樣

  1. 論壇/ F1 /什麼/頁-2
  2. 論壇/ T1 /什麼/頁-2

我想你signup.php代碼一點點的編輯,但它不工作。

該腳本的所有頁面都是這樣格式化的,any.php?xid = n & p = n(n!= 1或n> 1)。

所以我想爲任何.php,相關的any.php相同的前綴,即任何.php有一個book.php我想這樣的網址,任何/ a1 /任何東西/頁面-2和任何/ b1/anything/page-2(當n> 1時將顯示第n頁)

請幫我這裏,我卡在這裏。非常感謝你的友好幫助。

回答

0
RewriteEngine On 

# to account.php 
RewriteRule ^account/edit/?$ /account.php?page=edit [L] 
RewriteRule ^account/view/?$ /account.php?page=view [L] 
#etc... 

# to login.php 
RewriteRule ^account/login/?$ /login.php?action=login [L] 
RewriteRule ^account/login/blocked/?$ /login.php?action=block [L] 

# to signup.php 
RewriteRule ^account/create/? /signup.php?page=process [L] 
RewriteRule ^account/create/step/([12])/?$ /signup.php?page=process&step=$1 [L] 

# to logout.php 
RewriteRule ^account/logout/?$ /logout.php [L] 
+0

謝謝,非常感謝..其工作。 –

+0

Signup.php有3頁,? page = process,? page = process&step = 1,2。 #to signup.php RewriteRule^account/ create /? /signup.php? page = process [L] RewriteRule^account/ create/step /([12])/? $ /signup.php? 頁=過程&步驟= $ 1 [L] - 未用於本工作.. –

+0

@FarhanIhsas'步驟/([12])''匹配步驟/ 1'或'步驟/ 2'。 –