Создать ответ 
ЧПУ ссылки, получить ID категории
Автор Сообщение
Winston Не на форуме
Старшина
*

Сообщений: 55
У нас с: Jan 2013
Сообщение: #1
ЧПУ ссылки, получить ID категории
Здравствуйте!

Ниже код, он рабочий, но есть загвоздка при небольшом изменении.

Не могу получить ID.

.htaccess
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^papka/[^/]+\.html$ categories.php [L]

PHP код:
<?php $requestUri $_SERVER['REQUEST_URI'];
$requestUri preg_replace('/\?.+/'''$requestUri);
$requestUri preg_replace('#^/?#'''$requestUri);
 
$parts explode('/'$requestUri);
$categoryPart $parts[0];
$articlePart = isset ($parts[1]) ? $parts[1] : null;
 
$categoryId 0;
$articleId 0;
 
$categoryPart mysql_real_escape_string(preg_replace('#\.html$#i'''$categoryPart) . '.html');
$sql "SELECT id FROM `category` WHERE `url` = '{$categoryPart}'";
$categoryIdQuery mysql_query($sql);
if (
mysql_num_rows($categoryIdQuery) > 0) {
    
$categoryId = (int)mysql_result($categoryIdQuery00);
}
 
if (
$articlePart) {
    
$articlePart mysql_real_escape_string(preg_replace('#\.html$#i'''$articlePart) . '.html');
    
$sql "SELECT id FROM `content` WHERE `url` = '{$articlePart}'";
    
$articleIdQuery mysql_query($sql);
    if (
mysql_num_rows($articleIdQuery) > 0) {
        
$articleId = (int)mysql_result($articleIdQuery00);
    }
}
 
if (
$categoryId) {
    
$id_cat $categoryId;
}
?>

Сама ссылка должна получиться

PHP код:
http://www.site.ru/papka/category.html 

Она то получается, но данные не выводятся. Судя по всему, не могу получить id. Т.к. без чпу данные выводятся.

Вот так работает

PHP код:
<a href="/papka/categories.php?id_cat='.$row['id'].'"

А так нет

PHP код:
<a href="/papka/'.$row['url'].'"

Получается так то чпу работают, но щас делаю админку, и хотел реализовать там чпу. По сути все тоже, что и на сайте

только вместо

PHP код:
http://www.site.ru/category.html 

нужно получить

PHP код:
http://www.site.ru/papka/category.html 


Т.е. при данном коде все работает, но нужно сделать тоже само только в папке

Соответственно и урл должен быть

PHP код:
http://www.site.ru/papka/category.html 

Но так работать не хочет. Перепробовал разные варианты, но данные все равно не выводятся.
29.07.2013 12:17:58
Найти все сообщения Цитировать это сообщение
Создать ответ 


Переход:


Пользователи просматривают эту тему: 1 Гость(ей)


LiveInternet
© Copyright 2011-2024 by UsefulScript.ru