Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Общие вопросы по PHP » Как добавить второй символьный код?

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


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

вопрос
Здравствуйте.
Пытаюсь сделать второй символьный код, добавил в базу колонку для _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
Эксперт

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
Юзер

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

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

DomiTori
Юзер

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
Юзер

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

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

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

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

наверх