помощь при веб-разработке с использованием php - PullRequest
0 голосов
/ 04 июня 2011

У меня есть категории, сохраненные в базе данных, например.

    Category 1
    Category 2
             .
             .
    Category 10

enter image description here

Теперь мои меню

<ul>
<li><a href="/home/Category_page.php?id=1" >Category name</a></li>
<li><a href="/home/Category_page.php?id=2" >Category name</a></li>
<li><a href="/home/Category_page.php?id=3" >Category name</a></li>
<li><a href="/home/Category_page.php?id=4" >Category name</a></li>
<li><a href="/home/Category_page.php?id=5" >Category name</a></li>
<li><a href="/home/Category_page.php?id=6" >Category name</a></li>
<ul>

Я хотел сделать это

<ul>
<li><a href="/home/Category_name" >Category name</a></li>
<li><a href="/home/Category_name" >Category name</a></li>
<li><a href="/home/Category_name" >Category name</a></li>
<li><a href="/home/Category_name" >Category name</a></li>
<li><a href="/home/Category_name" >Category name</a></li>
<li><a href="/home/Category_name" >Category name</a></li>
<ul>

имена категорий будут другими, в href дается только имя категории, в .htaccess я могу перенаправить на другую страницу, как

Правило в .htaccess: -

 RewriteRule ^home/([a-zA-Z0-9_-]+)$ /details.php/$1.php

Здесь, на странице сведений, следует ли проверять имя категории в базе данных для получения сведений?

или

Какие есть другие варианты?Мне не нужен идентификатор категории в URL.

1 Ответ

0 голосов
/ 04 июня 2011

Если у вас есть ограниченное количество категорий, и они не очень часто меняются, вы можете использовать RewriteMap, чтобы сопоставить имена в URL-адресах с красивой обработкой и версиями с идентификаторами.http://httpd.apache.org/docs/2.0/mod/mod_rewrite.html#rewritemap

В противном случае вы можете добавить поиск в базе данных (либо таблицу, присоединенную к таблице категорий, либо новый столбец в таблице категорий) с уникальным столбцом, содержащим нужное для URL имя категории.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...