2012-11-30 124 views
2

我有一個包含catname(catename)和catid(23)的表。 現在在URL我顯示catid = 23。 我已經定義了一個重寫規則,顯示example.com/13在網址是:example.com?catid=13 是否有可能實現以下.htacces顯示名稱而不是id

在網址:example.com/catename 實際頁面則顯示:example.com?catid = 13

+0

catid和catname是動態鏈接的,catid是唯一的,名稱可以是相同的 –

回答

1

如果您的類別名稱不唯一,最好的做法是使用example.com/13-catname等網址。 更改您的重寫規則以提取ID並將其傳遞給PHP腳本。

1

這是可能的。您需要確保catname是唯一的,如果不是,則需要添加其他字段permalink/uniqid以包含唯一且友好的網址別名。

RewriteRule ^/(\s+)$ ./index.php?catname=$1 

您需要在您的PHP文件中檢查catname並進行相應的處理。

5

首先,您還希望在URL中發送類別名稱。

然後使用,在.htaccess

RewriteRule ^(.*)-c-(.*).html$ product_info.php?catid=$2%1 

它爲我工作。

另一種解決方案

如果你只想顯示catname,不catid,那麼你要在表中創建一個新的領域具有獨特的關鍵。然後保存您要在URL中顯示的類別的別名。

+0

但我不希望它像example.com/catname/catid它應該像example.com/catname –

+0

如果只想顯示carname而不是catid然後你想在表格中創建新的字段。然後保存你想在url中顯示的別名的別名。 – 2012-11-30 12:36:11

+0

想一想。領域也有獨特的鑰匙。 – 2012-11-30 12:36:45

0

感謝您的建議。現在我懂了。由於catname不是唯一的,兩個頁面可以具有相同的url,因此我必須確保它是唯一的。我可以在前面添加Id以使其具有獨特性。從這個名字我可以實現這一點。非常感謝。

相關問題