Не нравятся результаты поиска? Попробуйте другой поиск!
dle-faq.ru FAQ (все вопросы) Общие вопросы по PHP Как добавить второй символьный код?

Как добавить второй символьный код?


     18.04.2016    Общие вопросы по PHP, Хаки    450

вопрос
Здравствуйте.
Пытаюсь сделать второй символьный код, добавил в базу колонку для _post
подправил engine/inc/addnews.php, engine/inc/editnews.php, engine/modules/addnews.php, engine.php просто продублировал catalog
проблема осталось только с init.php если делаю так
if (isset ( $_GET['catalog'] )) {

    $catalogg = @strip_tags ( str_replace ( '/', '', urldecode ( (string)$_GET['catalogg'] ) ) );

    if ( $config['charset'] == "windows-1251" AND $config['charset'] != detect_encoding($catalogg) ) {

        if( function_exists( 'mb_convert_encoding' ) ) {

            $catalogg = mb_convert_encoding( $catalogg, "windows-1251", "UTF-8" );

        } elseif( function_exists( 'iconv' ) ) {

            $catalogg = iconv( "UTF-8", "windows-1251//IGNORE", $catalogg );

        }

    }

    $catalogg = $db->safesql ( dle_substr ( $catalogg, 0, 3, $config['charset'] ) );

} else $catalogg = '';

все отлично ищет по второму символьному коду, но естественно по первому не ищет.
Собственно нужна помощь как совместить $catalog и $catalogg чтобы поиск был по обеим символьным кодам?
Заранее спасибо за любую помощь.

Ответа пока нет


Комментарии пользователей (4)

vitnet
218

2171 | 930

vitnet - 18 апреля 2016 18:54 - Эксперт

1.0 .htaccess

# вывод в виде каталога 1
RewriteRule ^catalog/([^/]*)/rss.xml$ engine/rss.php?catalog=$1 [L]
RewriteRule ^catalog/([^/]*)(/?)+$ index.php?catalog=$1 [L]
RewriteRule ^catalog/([^/]*)/page/([0-9]+)(/?)+$ index.php?catalog=$1&cstart=$2 [L]

# вывод в виде каталога 2
RewriteRule ^catalogs/([^/]*)/rss.xml$ engine/rss.php?catalogs=$1 [L]
RewriteRule ^catalogs/([^/]*)(/?)+$ index.php?catalogs=$1 [L]
RewriteRule ^catalogs/([^/]*)/page/([0-9]+)(/?)+$ index.php?catalogs=$1&cstart=$2 [L]

2.0 init.php
if (isset ( $_GET['catalog'] )) {
    $catalog = @strip_tags( str_replace( '/', '', urldecode( (string)$_GET['catalog'] ) ) );

    if ( $config['charset'] == "windows-1251" AND $config['charset'] != detect_encoding($catalog) ) {
        if( function_exists( 'mb_convert_encoding' ) ) {
            $catalog = mb_convert_encoding( $catalog, "windows-1251", "UTF-8" );
        } elseif( function_exists( 'iconv' ) ) {
            $catalog = iconv( "UTF-8", "windows-1251//IGNORE", $catalog );
        }
    }

    $catalog = $db->safesql( dle_substr( $catalog, 0, 3, $config['charset'] ) );
} else $catalog = '';

if( isset( $_GET['catalogs'] ) ) {
    $catalogs = @strip_tags( str_replace( '/', '', urldecode( (string)$_GET['catalogs'] ) ) );

    if( $config['charset'] == "windows-1251" AND $config['charset'] != detect_encoding($catalogs) ) {
        if( function_exists( 'mb_convert_encoding' ) ) {
            $catalogs = mb_convert_encoding( $catalogs, "windows-1251", "UTF-8" );
        } elseif( function_exists( 'iconv' ) ) {
            $catalogs = iconv( "UTF-8", "windows-1251//IGNORE", $catalogs );
        }
    }

    $catalogs = $db->safesql( dle_substr( $catalogs, 0, 3, $config['charset'] ) );
} else $catalogs = '';

kovalenko3331
3

129 | 88

kovalenko3331 - 18 апреля 2016 18:58 - Юзер

vitnet, спасибо за ответ. Но мне нужно чтобы оба каталога были доступны по адресу /catalog/

DomiTori
8

132 | 21

DomiTori - 19 апреля 2016 19:38 - Юзер

RewriteRule ^catalog/([^/]*)/rss.xml$ engine/rss.php?catalog=$1 [L]
RewriteRule ^catalog/([^/]*)(/?)+$ index.php?catalog=$1 [L]
RewriteRule ^catalog/([^/]*)/page/([0-9]+)(/?)+$ index.php?catalog=$1&cstart=$2 [L]

RewriteRule ^catalog/([^/]*)/rss.xml$ engine/rss.php?catalogs=$1 [L]
RewriteRule ^catalog/([^/]*)(/?)+$ index.php?catalogs=$1 [L]
RewriteRule ^catalog/([^/]*)/page/([0-9]+)(/?)+$ index.php?catalogs=$1&cstart=$2 [L]

kovalenko3331
3

129 | 88

kovalenko3331 - 20 апреля 2016 10:11 - Юзер

DomiTori, Как можно к одному адресу /catalog/ применяться два правила?

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы