0

您好,我遇到的问题是,我有一个登录页面(event.php),显示来自我的数据库的事件。

其他字段中的每个事件都有“类别”、“标题”、“ID”。我正在尝试为我的网站创建干净的 url,看起来像这样http://domain.com/event/category/title但问题是某些事件可能具有相同的标题,因为它们可能每周重复一次,尽管如此他们确实有唯一的 id,我用它来获取特定的事件。

我的问题是这样的,我该如何转换:

http://www.domain.com/event.php?cat=rock&title=Great-gig&id=145

进入:

http://www.domain.com/event/rock/Great-gig

请记住,我确实需要 id 的值,但我不希望它以某种方式显示在干净的 url 上......

我可以使用 htaccess 创建干净的 url,但我不知道如何排除 id 被看到。

谢谢你。

4

3 回答 3

1

您只有 2 个选项:

  1. 制作一个别名,例如,如果事件在 12 月,则为 Great-gig-Dec,如果是在一月,则为 Great-gig-Jan,并将此值用作您的唯一 ID

  2. 仅加载下一个事件或最近的事件,具体取决于您的站点结构。这样,如果有多个 Great-gig,那么您将获得最新的或下一个,因此您可以像http://www.domain.com/next-events/rock/Great-gighttp://www.domain.com/next-events/rock/Great-gig /www.domain.com/latest-events/rock/Great-gig。所以在这里你知道要使用多行中的哪一行,而它仍然看起来像一个好的 url。

格言

于 2012-12-11T13:07:16.530 回答
0

你不能排除它并使用它。您必须通过它,或者使用标题查找事件。

于 2012-12-11T12:58:03.857 回答
0

嗨,您需要在文件夹中为此编写 htacces 创建一个 .htaccess 文件

在那写下这段代码

RewriteEngine On
RewriteBase /foldername/  //for localhost
RewriteBase /              // for online

RewriteRule ^event/(.+)/(.+)/?$ event.php?cat=$1&title=$2 [L,QSA]
于 2012-12-11T13:04:26.423 回答