Рейтинги Кинопоиск + IMDB

Рейтинги Кинопоиск + IMDB 1.0.0

Exile

Администратор
У меня не установлен этот мод, но при беглом осмотре, видно что нужно править str_replace в kinopoisk.php
Он писался под работу с другим немного url, я так понимаю раньше был урл
Код:
http://www.kinopoisk.ru/film/681831/
а сей час
Код:
https://www.kinopoisk.ru/film/nastoyashchiy-detektiv-2014-681831/
получается в строку
Код:
$xml = simplexml_load_file("http://rating.kinopoisk.ru/".$film_id.".xml");
приезжает не id фильма, а вот что именно там нужно уже глянуть var_damp()
да и предыдущие тоже переменные не помешает проверить, так как урлы на кинопоиске изменились.
Подождите, может у кого есть исправленное решение.
Рейтинги не переезжали -

Please Login or Register to view hidden text.


Там скорее всего изменилось название переменных и только.
 

nexo

Пользователь
Ошибка в логах, рейтинг не показыват, чистые картинки. Что нужно поправить? Версия движка 2.3.0.3 PHP 7.2
Код:
2023/09/27 00:14:53 [error] 5442#5442: *1103859 FastCGI sent in stderr: "PHP message: PHP Notice:  Undefined offset: 0 in
 /var/www/*****/ratings/imdb.php on line 17
PHP message: PHP Notice:  Undefined offset: 0 in /var/www/*****/ratings/imdb.php on line 18" while reading response header from upstream,
 client: 121.101.104.87, server: *****.to, request: "GET /ratings/imdb.php?url=tt12674536 HTTP/2.0", upstream: "fastcgi://127.0.0.1:9000", host:
 "*****.to", referrer: "https://*****.to/viewtopic.php?t=472"

Строки 17, 18 -
$imdb_rating = $imdb[0][1];
$imdb_votes = $imdb[0][2];

Код imdb.php
PHP:
<?php
define ( 'RATING_ROOT_DIR', dirname ( __FILE__ ) );

$refresh_time = 86400 * 7; // 86400 время в секундах через которое будет происходить обновление.
$site_name = "Torrent"; //Сюда вписываем название вашего сайта.
$filmurl = htmlspecialchars(trim($_REQUEST['url']));
$filmurl_array = parse_url($filmurl);
$film_id = str_replace("/title/","", $filmurl_array['path']);
$film_id = str_replace("/","", $film_id);
$filmurl = "http://www.imdb.com/title/". $film_id ."/";
if($filmurl_array['host'] = "www.imdb.com")
{
    if(!file_exists( RATING_ROOT_DIR . "/imdb/". $film_id .".png" ) OR (time() - filemtime( RATING_ROOT_DIR . "/imdb/". $film_id .".png")) > $refresh_time )
    {
        $film = file_get_contents($filmurl);
        preg_match_all('#<span itemprop="ratingValue">(.*?)</span>.*?<span class="small" itemprop="ratingCount">(.*?)</span>#isu', $film, $imdb, PREG_SET_ORDER);
        $imdb_rating = $imdb[0][1];
        $imdb_votes = $imdb[0][2];
 
Последнее редактирование:
Сверху