Скрыть объявление
ВАШИ ПРАВА ОГРАНИЧЕНЫ!

Зарегистрируйтесь на форуме, чтобы стать полноценным участником сообщества!

Нужна помощь

Тема в разделе "Вопросы- ответы", создана пользователем arifira1, 15 сен 2016.

15.09.16 в 10:45
04.10.16 в 19:32
14
1.560
0
  1. TopicStarter Overlay
    arifira1

    arifira1 Посетитель

    Регистрация:
    2 мар 2016
    Сообщения:
    54
    Лучших ответов:
    0
    Рейтинги:
    +12 / 0 / -0
    Привет всем!
    Помогите пожалуйста с модулем Rating:kp [dle 9.x - 10.x]

    Там число голосов выводится с разделителем типа 1 234 а мне надо чтобы было 1234
     
    #1 arifira1, 15 сен 2016
    Последнее редактирование: 16 сен 2016
  2. TopicStarter Overlay
    arifira1

    arifira1 Посетитель

    Регистрация:
    2 мар 2016
    Сообщения:
    54
    Лучших ответов:
    0
    Рейтинги:
    +12 / 0 / -0
    Никто не поможет?
     
  3. europa1988

    europa1988 Бывалый

    Регистрация:
    24 фев 2016
    Сообщения:
    613
    Лучших ответов:
    2
    Рейтинги:
    +113 / 11 / -0
    подожди не много, все еще спят:D
     
  4. Intention

    Intention Местный

    Регистрация:
    15 янв 2016
    Сообщения:
    2.098
    Лучших ответов:
    0
    Рейтинги:
    +689 / 2 / -0
    код в студию
     
  5. TopicStarter Overlay
    arifira1

    arifira1 Посетитель

    Регистрация:
    2 мар 2016
    Сообщения:
    54
    Лучших ответов:
    0
    Рейтинги:
    +12 / 0 / -0
    Код:
    <?php
    /*
    =============================================================================
    Rating KP && iMDB - Рейтинг с Кинопоиска
    =============================================================================
    Автор: Gameer
    -----------------------------------------------------
    URL: http://gameer.name/
    -----------------------------------------------------
    email: [email protected]
    -----------------------------------------------------
    skype: gameerblog
    =============================================================================
    Файл:  rating_kp.php
    =============================================================================
    Версия модуля : Stable Release
    =============================================================================
    */
    
    if( ! defined( 'DATALIFEENGINE' ) ) return;
    
    // проверка кэша
    $allow_cache = ($config['version_id'] >= '10.2') ? $config['allow_cache'] == '1' : $config['allow_cache'] == "yes";
    
    $cache_change = false; // включение кэша принудительно
    if(!$allow_cache)
    {
        if ($config['version_id'] >= '10.2')
            $config['allow_cache'] = '1';
        else
            $config['allow_cache'] = "yes";
        $cache_change = true;
    } // конец принудительного кэша
    
    $id_kinopoisk = is_numeric($id_kinopoisk) ? intval($id_kinopoisk) : false; if($id_kinopoisk === false) return; // получаем id кинопоиска, если его нету, прекращаем работу.
    
    $config['clear_cache'] = (intval($config['clear_cache']) > 1) ? intval($config['clear_cache']) : 0; $clear_change = false; // проверка на очищение кэша
    if($config['clear_cache'] == 0)
    {
        $config['clear_cache'] = is_numeric($clear) ? intval($clear) : 10080; // задаем поставленный или на 7 дней
        $clear_change = true;
    }
    
    $kp_data = dle_cache( "news_kp_" . $id_kinopoisk, $config['skin'], false); // берем кэш
    
    if($kp_data !== false) // если получли кэш
    {
        echo unserialize($kp_data); // выводим данные
        return; // выход
    }
    
    $kp_rating = new DOMDocument(); // создаем дом документ
    $kp_rating->load("http://www.kinopoisk.ru/rating/{$id_kinopoisk}.xml"); // загружаем страницу с рейтингом
    
    $kinopoisk = $kp_rating->getElementsByTagName('kp_rating'); // берем рейтинг кп
    $kino_rating = $kinopoisk->item(0)->nodeValue; // получаем значение
    $kino_votes = number_format(is_null($kino_rating) ? 0 : $kinopoisk->item(0)->getAttribute('num_vote')); // если рейтинг не пуст то берем голоса
    
    $imdb = $kp_rating->getElementsByTagName('imdb_rating'); // берем рейтинг imdb
    $imdb_rating = $imdb->item(0)->nodeValue; // получаем значение
    $imdb_votes = number_format(is_null($imdb_rating) ? 0 : $imdb->item(0)->getAttribute('num_vote')); // если рейтинг не пуст то берем голоса
    
    $tpl->load_template('ratingkp.tpl'); // загружаем шаблон
    
    if($kino_rating) // если есть рейтинг
    {
        $tpl->set('[rating:kp]', $kino_rating); // вывод рейтинга
        $tpl->set('[vote:kp]', $kino_votes); // вывод голосов
       
        if(strpos( $tpl->copy_template, "[rating:kp:" ) !== false) // вывод с округлением
            $tpl->copy_template = preg_replace_callback( "#\\[rating:kp:(.*?)\\]#is", function ($matches) use ($kino_rating) { return round($kino_rating, intval($matches[1])); }, $tpl->copy_template );
       
        if(strpos( $tpl->copy_template, "[vote:kp:" ) !== false) // вывод голосов со своим разделитем
            $tpl->copy_template = preg_replace_callback( "#\\[vote:kp:(.*?)\\]#is", function ($matches) use ($kino_votes) { return str_replace(",", $matches[1], $kino_votes); }, $tpl->copy_template );
       
        $tpl->set_block("'\\[e:rating:kp\\](.*?)\\[/e:rating:kp\\]'si", '\\1'); // блок рейтинга если есть вывод
    }
    else
        $tpl->set_block("'\\[e:rating:kp\\](.*?)\\[/e:rating:kp\\]'si", ''); // если нету скрываем информацию
    
    if($imdb_rating) // если есть рейтинг
    {
        $tpl->set('[rating:imdb]', $imdb_rating); // вывод рейтинга
        $tpl->set('[vote:imdb]', $imdb_votes); // вывод голосов
       
        if(strpos( $tpl->copy_template, "[rating:imdb:" ) !== false) // вывод с округлением
            $tpl->copy_template = preg_replace_callback( "#\\[rating:imdb:(.*?)\\]#is", function ($matches) use ($imdb_rating) { return round($imdb_rating, intval($matches[1])); }, $tpl->copy_template );
       
        if(strpos( $tpl->copy_template, "[vote:imdb:" ) !== false) // вывод голосов со своим разделитем
            $tpl->copy_template = preg_replace_callback( "#\\[vote:imdb:(.*?)\\]#is", function ($matches) use ($imdb_votes) { return str_replace(",", $matches[1], $imdb_votes); }, $tpl->copy_template );
       
        $tpl->set_block("'\\[e:rating:imdb\\](.*?)\\[/e:rating:imdb\\]'si", '\\1'); // блок рейтинга если есть вывод
    }
    else
        $tpl->set_block("'\\[e:rating:imdb\\](.*?)\\[/e:rating:imdb\\]'si", '');  // если нету скрываем информацию
    
    if($kino_rating || $imdb_rating)
    {
        $tpl->set_block("'\\[e:rating\\](.*?)\\[/e:rating\\]'si", '\\1');  // если есть данные выводим информацию
        $tpl->set_block("'\\[e:rating:f\\](.*?)\\[/e:rating:f\\]'si", ''); //  если есть данные скрываем информацию
    }
    else
    {
        $tpl->set_block("'\\[e:rating\\](.*?)\\[/e:rating\\]'si", '');           //  если есть данные скрываем информацию
        $tpl->set_block("'\\[e:rating:f\\](.*?)\\[/e:rating:f\\]'si", '\\1');     //  если есть данные выводим информацию
    }
    
    $tpl->compile('ratingkp'); // компилируем
    
    create_cache("news_kp_" . $id_kinopoisk, serialize($tpl->result['ratingkp']), $config['skin'], false); //создаем кэш
    
    if ($cache_change)    $config['allow_cache'] = false; //выключаем кэш принудительно (возвращаем назад)
    if ($clear_change)    $config['clear_cache'] = 0;     //выключаем очистку кэша (возвращаем назад)
    
    echo $tpl->result['ratingkp'];
     
  6. PunPun

    VIP Кинотрафик v2

    Регистрация:
    11 июн 2015
    Сообщения:
    7.299
    Лучших ответов:
    31
    Рейтинги:
    +3.896 / 96 / -0
    Ясно же все написано
     
  7. Intention

    Intention Местный

    Регистрация:
    15 янв 2016
    Сообщения:
    2.098
    Лучших ответов:
    0
    Рейтинги:
    +689 / 2 / -0
    @arifira1,
    PHP:
    <?php
    /*
    =============================================================================
    Rating KP && iMDB - Рейтинг с Кинопоиска
    =============================================================================
    Автор: Gameer
    -----------------------------------------------------
    URL: http://gameer.name/
    -----------------------------------------------------
    email: [email protected]
    -----------------------------------------------------
    skype: gameerblog
    =============================================================================
    Файл:  rating_kp.php
    =============================================================================
    Версия модуля : Stable Release
    =============================================================================
    */

    if( ! defined'DATALIFEENGINE' ) ) return;

    // проверка кэша
    $allow_cache = ($config['version_id'] >= '10.2') ? $config['allow_cache'] == '1' $config['allow_cache'] == "yes";

    $cache_change false// включение кэша принудительно
    if(!$allow_cache)
    {
        if (
    $config['version_id'] >= '10.2')
            
    $config['allow_cache'] = '1';
        else
            
    $config['allow_cache'] = "yes";
        
    $cache_change true;
    // конец принудительного кэша

    $id_kinopoisk is_numeric($id_kinopoisk) ? intval($id_kinopoisk) : false; if($id_kinopoisk === false) return; // получаем id кинопоиска, если его нету, прекращаем работу.

    $config['clear_cache'] = (intval($config['clear_cache']) > 1) ? intval($config['clear_cache']) : 0$clear_change false// проверка на очищение кэша
    if($config['clear_cache'] == 0)
    {
        
    $config['clear_cache'] = is_numeric($clear) ? intval($clear) : 10080// задаем поставленный или на 7 дней
        
    $clear_change true;
    }

    $kp_data dle_cache"news_kp_" $id_kinopoisk$config['skin'], false); // берем кэш

    if($kp_data !== false// если получли кэш
    {
        echo 
    unserialize($kp_data); // выводим данные
        
    return; // выход
    }

    $kp_rating = new DOMDocument(); // создаем дом документ
    $kp_rating->load("http://www.kinopoisk.ru/rating/{$id_kinopoisk}.xml"); // загружаем страницу с рейтингом

    $kinopoisk $kp_rating->getElementsByTagName('kp_rating'); // берем рейтинг кп
    $kino_rating $kinopoisk->item(0)->nodeValue// получаем значение
    $kino_votes number_format(is_null($kino_rating) ? $kinopoisk->item(0)->getAttribute('num_vote')); // если рейтинг не пуст то берем голоса

    $imdb $kp_rating->getElementsByTagName('imdb_rating'); // берем рейтинг imdb
    $imdb_rating $imdb->item(0)->nodeValue// получаем значение
    $imdb_votes number_format(is_null($imdb_rating) ? $imdb->item(0)->getAttribute('num_vote')); // если рейтинг не пуст то берем голоса

    $tpl->load_template('ratingkp.tpl'); // загружаем шаблон

    if($kino_rating// если есть рейтинг
    {
        
    $tpl->set('[rating:kp]'$kino_rating); // вывод рейтинга
        
    $tpl->set('[vote:kp]'$kino_votes); // вывод голосов
       
        
    if(strpos$tpl->copy_template"[rating:kp:" ) !== false// вывод с округлением
            
    $tpl->copy_template preg_replace_callback"#\\[rating:kp:(.*?)\\]#is", function ($matches) use ($kino_rating) { return round($kino_ratingintval($matches[1])); }, $tpl->copy_template );
       
        if(
    strpos$tpl->copy_template"[vote:kp:" ) !== false// вывод голосов со своим разделитем
            
    $tpl->copy_template preg_replace_callback"#\\[vote:kp:(.*?)\\]#is", function ($matches) use ($kino_votes) { return str_replace(","''$kino_votes); }, $tpl->copy_template );
       
        
    $tpl->set_block("'\\[e:rating:kp\\](.*?)\\[/e:rating:kp\\]'si"'\\1'); // блок рейтинга если есть вывод
    }
    else
        
    $tpl->set_block("'\\[e:rating:kp\\](.*?)\\[/e:rating:kp\\]'si"''); // если нету скрываем информацию

    if($imdb_rating// если есть рейтинг
    {
        
    $tpl->set('[rating:imdb]'$imdb_rating); // вывод рейтинга
        
    $tpl->set('[vote:imdb]'$imdb_votes); // вывод голосов
       
        
    if(strpos$tpl->copy_template"[rating:imdb:" ) !== false// вывод с округлением
            
    $tpl->copy_template preg_replace_callback"#\\[rating:imdb:(.*?)\\]#is", function ($matches) use ($imdb_rating) { return round($imdb_ratingintval($matches[1])); }, $tpl->copy_template );
       
        if(
    strpos$tpl->copy_template"[vote:imdb:" ) !== false// вывод голосов со своим разделитем
            
    $tpl->copy_template preg_replace_callback"#\\[vote:imdb:(.*?)\\]#is", function ($matches) use ($imdb_votes) { return str_replace(","''$imdb_votes); }, $tpl->copy_template );
       
        
    $tpl->set_block("'\\[e:rating:imdb\\](.*?)\\[/e:rating:imdb\\]'si"'\\1'); // блок рейтинга если есть вывод
    }
    else
        
    $tpl->set_block("'\\[e:rating:imdb\\](.*?)\\[/e:rating:imdb\\]'si"'');  // если нету скрываем информацию

    if($kino_rating || $imdb_rating)
    {
        
    $tpl->set_block("'\\[e:rating\\](.*?)\\[/e:rating\\]'si"'\\1');  // если есть данные выводим информацию
        
    $tpl->set_block("'\\[e:rating:f\\](.*?)\\[/e:rating:f\\]'si"''); //  если есть данные скрываем информацию
    }
    else
    {
        
    $tpl->set_block("'\\[e:rating\\](.*?)\\[/e:rating\\]'si"'');           //  если есть данные скрываем информацию
        
    $tpl->set_block("'\\[e:rating:f\\](.*?)\\[/e:rating:f\\]'si"'\\1');     //  если есть данные выводим информацию
    }

    $tpl->compile('ratingkp'); // компилируем

    create_cache("news_kp_" $id_kinopoiskserialize($tpl->result['ratingkp']), $config['skin'], false); //создаем кэш

    if ($cache_change)    $config['allow_cache'] = false//выключаем кэш принудительно (возвращаем назад)
    if ($clear_change)    $config['clear_cache'] = 0;     //выключаем очистку кэша (возвращаем назад)

    echo $tpl->result['ratingkp'];
     
    • Нравится Нравится x 2
  8. TopicStarter Overlay
    arifira1

    arifira1 Посетитель

    Регистрация:
    2 мар 2016
    Сообщения:
    54
    Лучших ответов:
    0
    Рейтинги:
    +12 / 0 / -0

    Вложения:

  9. Intention

    Intention Местный

    Регистрация:
    15 янв 2016
    Сообщения:
    2.098
    Лучших ответов:
    0
    Рейтинги:
    +689 / 2 / -0
    @arifira1, ну ты же кеш чистил правда?
     
    • Нравится Нравится x 1
  10. TopicStarter Overlay
    arifira1

    arifira1 Посетитель

    Регистрация:
    2 мар 2016
    Сообщения:
    54
    Лучших ответов:
    0
    Рейтинги:
    +12 / 0 / -0
    Уже почистил - все ок. Спасибо за помощь)
     
    • Нравится Нравится x 1
  11. TopicStarter Overlay
    arifira1

    arifira1 Посетитель

    Регистрация:
    2 мар 2016
    Сообщения:
    54
    Лучших ответов:
    0
    Рейтинги:
    +12 / 0 / -0
    @Intention, прошу твоей помощи
    хочу вместо запитую поставить точку в рейтинге кп
     
  12. Intention

    Intention Местный

    Регистрация:
    15 янв 2016
    Сообщения:
    2.098
    Лучших ответов:
    0
    Рейтинги:
    +689 / 2 / -0
    @arifira1, трах-тебедох хозяин
    PHP:
    <?php
    /*
    =============================================================================
    Rating KP && iMDB - Рейтинг с Кинопоиска
    =============================================================================
    Автор: Gameer
    -----------------------------------------------------
    URL: http://gameer.name/
    -----------------------------------------------------
    email: [email protected]
    -----------------------------------------------------
    skype: gameerblog
    =============================================================================
    Файл:  rating_kp.php
    =============================================================================
    Версия модуля : Stable Release
    =============================================================================
    */

    if( ! defined'DATALIFEENGINE' ) ) return;

    // проверка кэша
    $allow_cache = ($config['version_id'] >= '10.2') ? $config['allow_cache'] == '1' $config['allow_cache'] == "yes";

    $cache_change false// включение кэша принудительно
    if(!$allow_cache)
    {
        if (
    $config['version_id'] >= '10.2')
            
    $config['allow_cache'] = '1';
        else
            
    $config['allow_cache'] = "yes";
        
    $cache_change true;
    // конец принудительного кэша

    $id_kinopoisk is_numeric($id_kinopoisk) ? intval($id_kinopoisk) : false; if($id_kinopoisk === false) return; // получаем id кинопоиска, если его нету, прекращаем работу.

    $config['clear_cache'] = (intval($config['clear_cache']) > 1) ? intval($config['clear_cache']) : 0$clear_change false// проверка на очищение кэша
    if($config['clear_cache'] == 0)
    {
        
    $config['clear_cache'] = is_numeric($clear) ? intval($clear) : 10080// задаем поставленный или на 7 дней
        
    $clear_change true;
    }

    $kp_data dle_cache"news_kp_" $id_kinopoisk$config['skin'], false); // берем кэш

    if($kp_data !== false// если получли кэш
    {
        echo 
    unserialize($kp_data); // выводим данные
        
    return; // выход
    }

    $kp_rating = new DOMDocument(); // создаем дом документ
    $kp_rating->load("http://www.kinopoisk.ru/rating/{$id_kinopoisk}.xml"); // загружаем страницу с рейтингом

    $kinopoisk $kp_rating->getElementsByTagName('kp_rating'); // берем рейтинг кп
    $kino_rating $kinopoisk->item(0)->nodeValue// получаем значение
    $kino_votes number_format(is_null($kino_rating) ? $kinopoisk->item(0)->getAttribute('num_vote')); // если рейтинг не пуст то берем голоса

    $imdb $kp_rating->getElementsByTagName('imdb_rating'); // берем рейтинг imdb
    $imdb_rating $imdb->item(0)->nodeValue// получаем значение
    $imdb_votes number_format(is_null($imdb_rating) ? $imdb->item(0)->getAttribute('num_vote')); // если рейтинг не пуст то берем голоса

    $tpl->load_template('ratingkp.tpl'); // загружаем шаблон

    if($kino_rating// если есть рейтинг
    {
        
    $tpl->set('[rating:kp]'$kino_rating); // вывод рейтинга
        
    $tpl->set('[vote:kp]'$kino_votes); // вывод голосов
       
        
    if(strpos$tpl->copy_template"[rating:kp:" ) !== false// вывод с округлением
            
    $tpl->copy_template preg_replace_callback"#\\[rating:kp:(.*?)\\]#is", function ($matches) use ($kino_rating) { return round($kino_ratingintval($matches[1])); }, $tpl->copy_template );
       
        if(
    strpos$tpl->copy_template"[vote:kp:" ) !== false// вывод голосов со своим разделитем
            
    $tpl->copy_template preg_replace_callback"#\\[vote:kp:(.*?)\\]#is", function ($matches) use ($kino_votes) { return str_replace(","'.'$kino_votes); }, $tpl->copy_template );
       
        
    $tpl->set_block("'\\[e:rating:kp\\](.*?)\\[/e:rating:kp\\]'si"'\\1'); // блок рейтинга если есть вывод
    }
    else
        
    $tpl->set_block("'\\[e:rating:kp\\](.*?)\\[/e:rating:kp\\]'si"''); // если нету скрываем информацию

    if($imdb_rating// если есть рейтинг
    {
        
    $tpl->set('[rating:imdb]'$imdb_rating); // вывод рейтинга
        
    $tpl->set('[vote:imdb]'$imdb_votes); // вывод голосов
       
        
    if(strpos$tpl->copy_template"[rating:imdb:" ) !== false// вывод с округлением
            
    $tpl->copy_template preg_replace_callback"#\\[rating:imdb:(.*?)\\]#is", function ($matches) use ($imdb_rating) { return round($imdb_ratingintval($matches[1])); }, $tpl->copy_template );
       
        if(
    strpos$tpl->copy_template"[vote:imdb:" ) !== false// вывод голосов со своим разделитем
            
    $tpl->copy_template preg_replace_callback"#\\[vote:imdb:(.*?)\\]#is", function ($matches) use ($imdb_votes) { return str_replace(","''$imdb_votes); }, $tpl->copy_template );
       
        
    $tpl->set_block("'\\[e:rating:imdb\\](.*?)\\[/e:rating:imdb\\]'si"'\\1'); // блок рейтинга если есть вывод
    }
    else
        
    $tpl->set_block("'\\[e:rating:imdb\\](.*?)\\[/e:rating:imdb\\]'si"'');  // если нету скрываем информацию

    if($kino_rating || $imdb_rating)
    {
        
    $tpl->set_block("'\\[e:rating\\](.*?)\\[/e:rating\\]'si"'\\1');  // если есть данные выводим информацию
        
    $tpl->set_block("'\\[e:rating:f\\](.*?)\\[/e:rating:f\\]'si"''); //  если есть данные скрываем информацию
    }
    else
    {
        
    $tpl->set_block("'\\[e:rating\\](.*?)\\[/e:rating\\]'si"'');           //  если есть данные скрываем информацию
        
    $tpl->set_block("'\\[e:rating:f\\](.*?)\\[/e:rating:f\\]'si"'\\1');     //  если есть данные выводим информацию
    }

    $tpl->compile('ratingkp'); // компилируем

    create_cache("news_kp_" $id_kinopoiskserialize($tpl->result['ratingkp']), $config['skin'], false); //создаем кэш

    if ($cache_change)    $config['allow_cache'] = false//выключаем кэш принудительно (возвращаем назад)
    if ($clear_change)    $config['clear_cache'] = 0;     //выключаем очистку кэша (возвращаем назад)

    echo $tpl->result['ratingkp'];
     
    • Нравится Нравится x 1
  13. TopicStarter Overlay
    arifira1

    arifira1 Посетитель

    Регистрация:
    2 мар 2016
    Сообщения:
    54
    Лучших ответов:
    0
    Рейтинги:
    +12 / 0 / -0
    @Intention, спасибо за помощь, но я хотел сам рейтинг, а вы сделали количество голосов с запитой
     
  14. Intention

    Intention Местный

    Регистрация:
    15 янв 2016
    Сообщения:
    2.098
    Лучших ответов:
    0
    Рейтинги:
    +689 / 2 / -0
    @arifira1, Моя не внимательность) Попробуй так.
    PHP:
    <?php
    /*
    =============================================================================
    Rating KP && iMDB - Рейтинг с Кинопоиска
    =============================================================================
    Автор: Gameer
    -----------------------------------------------------
    URL: http://gameer.name/
    -----------------------------------------------------
    email: [email protected]
    -----------------------------------------------------
    skype: gameerblog
    =============================================================================
    Файл:  rating_kp.php
    =============================================================================
    Версия модуля : Stable Release
    =============================================================================
    */

    if( ! defined'DATALIFEENGINE' ) ) return;

    // проверка кэша
    $allow_cache = ($config['version_id'] >= '10.2') ? $config['allow_cache'] == '1' $config['allow_cache'] == "yes";

    $cache_change false// включение кэша принудительно
    if(!$allow_cache)
    {
        if (
    $config['version_id'] >= '10.2')
            
    $config['allow_cache'] = '1';
        else
            
    $config['allow_cache'] = "yes";
        
    $cache_change true;
    // конец принудительного кэша

    $id_kinopoisk is_numeric($id_kinopoisk) ? intval($id_kinopoisk) : false; if($id_kinopoisk === false) return; // получаем id кинопоиска, если его нету, прекращаем работу.

    $config['clear_cache'] = (intval($config['clear_cache']) > 1) ? intval($config['clear_cache']) : 0$clear_change false// проверка на очищение кэша
    if($config['clear_cache'] == 0)
    {
        
    $config['clear_cache'] = is_numeric($clear) ? intval($clear) : 10080// задаем поставленный или на 7 дней
        
    $clear_change true;
    }

    $kp_data dle_cache"news_kp_" $id_kinopoisk$config['skin'], false); // берем кэш

    if($kp_data !== false// если получли кэш
    {
        echo 
    unserialize($kp_data); // выводим данные
        
    return; // выход
    }

    $kp_rating = new DOMDocument(); // создаем дом документ
    $kp_rating->load("http://www.kinopoisk.ru/rating/{$id_kinopoisk}.xml"); // загружаем страницу с рейтингом

    $kinopoisk $kp_rating->getElementsByTagName('kp_rating'); // берем рейтинг кп
    $kino_rating $kinopoisk->item(0)->nodeValue// получаем значение
    $kino_votes number_format(is_null($kino_rating) ? $kinopoisk->item(0)->getAttribute('num_vote')); // если рейтинг не пуст то берем голоса

    $imdb $kp_rating->getElementsByTagName('imdb_rating'); // берем рейтинг imdb
    $imdb_rating $imdb->item(0)->nodeValue// получаем значение
    $imdb_votes number_format(is_null($imdb_rating) ? $imdb->item(0)->getAttribute('num_vote')); // если рейтинг не пуст то берем голоса

    $tpl->load_template('ratingkp.tpl'); // загружаем шаблон

    if($kino_rating// если есть рейтинг
    {
        
    $tpl->set('[rating:kp]'$kino_rating); // вывод рейтинга
        
    $tpl->set('[vote:kp]'$kino_votes); // вывод голосов
       
        
    if(strpos$tpl->copy_template"[rating:kp:" ) !== false// вывод с округлением
            
    $tpl->copy_template preg_replace_callback"#\\[rating:kp:(.*?)\\]#is", function ($matches) use ($kino_rating) { return str_replace(","'.'round($kino_ratingintval($matches[1]))); }, $tpl->copy_template );
       
        if(
    strpos$tpl->copy_template"[vote:kp:" ) !== false// вывод голосов со своим разделитем
            
    $tpl->copy_template preg_replace_callback"#\\[vote:kp:(.*?)\\]#is", function ($matches) use ($kino_votes) { return str_replace(","''$kino_votes); }, $tpl->copy_template );
       
        
    $tpl->set_block("'\\[e:rating:kp\\](.*?)\\[/e:rating:kp\\]'si"'\\1'); // блок рейтинга если есть вывод
    }
    else
        
    $tpl->set_block("'\\[e:rating:kp\\](.*?)\\[/e:rating:kp\\]'si"''); // если нету скрываем информацию

    if($imdb_rating// если есть рейтинг
    {
        
    $tpl->set('[rating:imdb]'$imdb_rating); // вывод рейтинга
        
    $tpl->set('[vote:imdb]'$imdb_votes); // вывод голосов
       
        
    if(strpos$tpl->copy_template"[rating:imdb:" ) !== false// вывод с округлением
            
    $tpl->copy_template preg_replace_callback"#\\[rating:imdb:(.*?)\\]#is", function ($matches) use ($imdb_rating) { return round($imdb_ratingintval($matches[1])); }, $tpl->copy_template );
       
        if(
    strpos$tpl->copy_template"[vote:imdb:" ) !== false// вывод голосов со своим разделитем
            
    $tpl->copy_template preg_replace_callback"#\\[vote:imdb:(.*?)\\]#is", function ($matches) use ($imdb_votes) { return str_replace(","''$imdb_votes); }, $tpl->copy_template );
       
        
    $tpl->set_block("'\\[e:rating:imdb\\](.*?)\\[/e:rating:imdb\\]'si"'\\1'); // блок рейтинга если есть вывод
    }
    else
        
    $tpl->set_block("'\\[e:rating:imdb\\](.*?)\\[/e:rating:imdb\\]'si"'');  // если нету скрываем информацию

    if($kino_rating || $imdb_rating)
    {
        
    $tpl->set_block("'\\[e:rating\\](.*?)\\[/e:rating\\]'si"'\\1');  // если есть данные выводим информацию
        
    $tpl->set_block("'\\[e:rating:f\\](.*?)\\[/e:rating:f\\]'si"''); //  если есть данные скрываем информацию
    }
    else
    {
        
    $tpl->set_block("'\\[e:rating\\](.*?)\\[/e:rating\\]'si"'');           //  если есть данные скрываем информацию
        
    $tpl->set_block("'\\[e:rating:f\\](.*?)\\[/e:rating:f\\]'si"'\\1');     //  если есть данные выводим информацию
    }

    $tpl->compile('ratingkp'); // компилируем

    create_cache("news_kp_" $id_kinopoiskserialize($tpl->result['ratingkp']), $config['skin'], false); //создаем кэш

    if ($cache_change)    $config['allow_cache'] = false//выключаем кэш принудительно (возвращаем назад)
    if ($clear_change)    $config['clear_cache'] = 0;     //выключаем очистку кэша (возвращаем назад)

    echo $tpl->result['ratingkp'];
     
    • Нравится Нравится x 1
  15. TopicStarter Overlay
    arifira1

    arifira1 Посетитель

    Регистрация:
    2 мар 2016
    Сообщения:
    54
    Лучших ответов:
    0
    Рейтинги:
    +12 / 0 / -0
    Класс! огромное спасибо тебе за оперативный помощь.
     
    • Нравится Нравится x 1
Похожие темы
  1. Dimoogle
    Ответов:
    17
    Просмотров:
    4.014
  2. Ramis7123
    Ответов:
    6
    Просмотров:
    1.510
  3. webmagnat
    Ответов:
    1
    Просмотров:
    1.738
  4. arifira1
    Ответов:
    20
    Просмотров:
    3.154
  5. empare
    Ответов:
    12
    Просмотров:
    2.045
Загрузка...
Яндекс.Метрика