2012-11-30 128 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以使其具有独特性。从这个名字我可以实现这一点。非常感谢。

相关问题