powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Помогите с ЧПУ!
4 сообщений из 4, страница 1 из 1
Помогите с ЧПУ!
    #38907817
dik_k
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
есть сайт, соответственно его файлы:
http://site.ru/index.php
http://site.ru/file2.php
Остальные данные лежат в БД
id, text (т.е. контент записи), name_url
Вызывал так: http://site.ru/dynamic.php?id=564
Мне же надо чтобы имя урл был такой: http://site.ru/dynamic/name_url/ (где name_url - это урл из БД)

template.php
Код: php
1.
2.
3.
4.
5.
6.
// МЕНЮ:
<a href="index.php">Главная страница</a><br>
<a href="file2.php">Следующий пункт меню</a>
// КОНТЕНТ 
<div> <?=$col1?> </div>
<div> <?=$col2?> </div>



index.php
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
<?PHP
 include ("config.php");
  $col1='<h1>список ссылок</h1>';
  $res = mysql_query("SELECT * FROM content WHERE id_category=1");
while ($row = mysql_fetch_assoc($res)) {
          $name_url=$row['name_url'];
          //БЫЛО ТАК:  
          $col1.='<a href=dynamic.php?id='.$id.'>'.$row['title'].'</a><br>';
          // СТАЛО ТАК
          $col1.='<a href="/dynamic/'.$name_url.'/">'.$row['title'].'</a><br>'; 
}



В файле dynamic.php когда передавал ID, стояла проверка:
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
<?PHP
if (isset($_GET['id']))     $id = (int) $_GET['id']; 
else     $id = 0;
// а потом уже была выборка:
  $res = mysql_query("SELECT * FROM content WHERE id='$id'");
while ($row = mysql_fetch_assoc($res)) {
          $col2.=$row['text'];
}
require("template.php");
?>



.htaccess
Код: html
1.
2.
3.
4.
5.
6.
RewriteEngine On
 
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
 
RewriteRule ^dynamic/([-_A-z0-9]+)/?$ /dynamic.php?url_name=$1 [L]



Как при такой ссылки <a href="/dynamic/'.$name_url.'/">'.$row['title'].'</a> передавать ID?
И ещё, при выборе в файле index.php ссылки, открывается нужная запись, но без стилей! Т.е. стили не подключаются.
И когда я пытаюсь через меню выбрать например Главная, то открывается не напрямую файл index.php, а пытается открыть через dynamic/

Что надо подправить в коде???
...
Рейтинг: 0 / 0
Помогите с ЧПУ!
    #38908319
Фотография Areostar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dik_k Мне же надо чтобы имя урл был такой: http://site.ru/dynamic/name_url/ (где name_url - это урл из БД)

в супер глобал $_GET может потасть только пара ключ->зеачение которая расположена в URL после ?

В ващем случае думаю придется URL парсить и name_url вынемать.
...
Рейтинг: 0 / 0
Помогите с ЧПУ!
    #38908874
Arhat109
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dik_k,

Если правильно понял изложенное, то:

1. У вас в rewrite rule похоже есть ошибка в регулярке;
2. id передавать также как раньше - через get параметры. Или как часть uri: "/dynamic/{$name_url}{$delimiter}{$id}"... $delimiter - на выбор из допустимых символов для URL;
3. про "неподключение стилей" - ничего в приведенном их не содержит, соответственно и сказать ничего нельзя.
4. Обычно rewrite настраивают тупо: "всё передать в index.php" ... а уже в нем разбираться "что це такэ хотелось".
...
Рейтинг: 0 / 0
Помогите с ЧПУ!
    #38909246
dik_k
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
спасибо, буду думать
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Помогите с ЧПУ!
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]