855

Почему блокируется URL?

1 ответ

Блокируется такая функция, на локалке все работает. Ошибка 500

function get_partner_price($url, $partner){
    $ch = curl_init();

    curl_setopt($ch, CURLOPT_AUTOREFERER, TRUE);
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
    $html = curl_exec($ch);
    curl_close($ch);
    switch($partner){
        case 'expert':
            $result = [];
            $classname = 'product__price-count';
            $domdocument = new DOMDocument('1.0', 'utf-8');
            @$domdocument->loadHTML($html);
            $a = new DOMXPath($domdocument);
            $spans = $a->query("//*[contains(concat(' ', normalize-space(@class), ' '), ' $classname ')]");
            for ($i = $spans->length - 1; $i > -1; $i--) {
                $result[] = utf8_decode($spans->item($i)->firstChild->nodeValue);
            }
            $price = $result[0];
            if($price == null) { return null; }
            break;

        case 'spets':
            $doc = new DOMDocument();
            @$doc->loadHTML($html);
            $price=$doc->getElementById('priceOffers')->nodeValue;
            if($price == null) { return null; }
            break;

        case 'sirius':
            $result = [];
            $classname = 'price-opt';
            $doс = new DOMDocument('1.0', 'utf-8');
            @$doс->loadHTML($html);
            $a = new DOMXPath($doс);
            $spans = $a->query(
                "//*[contains(concat(' ', normalize-space(@class), ' '), ' $classname ')]/span"
            );
            for ($i = $spans->length - 1; $i > -1; $i--) {
                $result[] = utf8_decode($spans->item($i)->firstChild->nodeValue);
            }
            $price = $result[12];
            if($price == null) { return null; }
            break;

        default:
            $price = null;
            break;
    }
    return $price;

}

Ответы (1)

Rosh1ck +103
23.11.2020 07:55
А в логах есть текст ошибки?

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

Ошибка при установке плагина WordPress

Здравствуйте! При установке плагина вылазает ошибка "Установка не удалась: Загрузка не удалась. Unauthorized" но после перезагрузке плагин оказывается установлен. В чём может быть проблема?

Конфликт плагинов на WordPress

Специалист обновил дизайн сайта, после чего начал тормозить сайт и подвисать. Holdingprogress.ru Техподдержка хостинга скинула логи Jan 19 12:44:02 vh336 apache_error[90281]: holdingprogress.ru [Thu Jan 19 12:44:02 2023] [warn] [pid 58372]...
Артур
471

Не могу обновиться с версии Joomla 3.9.27 на 3.10.11 и сменить версию PHP 7.4 на 8.0

1 вопрос: Скачал файлы через VPN, пробую через консоль. Выдаёт при загрузке ошибку "500". Никак не могу обновить сайт. Пакеты есть, а сайт не хочет их принять. 2-й вопрос:  Сайт просит сменить версию PHP c 7.4 на 8.0 и выше. Но...
Ваш баланс 10 ТК
1 ТК = 1 ₽
О том, как заработать и потратить Таймкарму, читайте в этой статье
Чтобы потратить Таймкарму, зарегистрируйтесь на нашем сайте
С помощью соцсетей
У меня нет аккаунта Зарегистрироваться
Нажимая кнопку «Зарегистрироваться», я даю согласие на обработку своих персональных данных, указанных в форме регистрации.
С помощью соцсетей
У меня уже есть аккаунт Войти
Нажимая кнопку «Зарегистрироваться», я даю согласие на обработку своих персональных данных, указанных в форме регистрации.
Инструкции по восстановлению пароля высланы на Ваш адрес электронной почты.
Пожалуйста, укажите email вашего аккаунта
Войти в Комьюнити
Регистрация в Комьюнити
Восстановление пароля