245

Почему блокируется 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 +28
23.11.2020 07:55
А в логах есть текст ошибки?

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

Толя Багров
172

рестарт php

Здравствуйте В инструкции https://timeweb.com/ru/community/articles/instrukciya-po-nastroyke-vds-bazovaya-konfiguraciya-i-rabota-s-lemp-1 сказано заменить в php.ini строку ;cgi.fix_pathinfo=1 на  cgi.fix_pathinfo=0 и перезагрузить...
Валерий
411

Бекапы на WordPress

Здравствуйте! Подскажите, пожалуйста, чтобы делать бекап сайта, необходимо устанавливать на WordPress специальный плагин или это можно делать другим способом?
Ольга
201

Как скрыть меню на странице Wordpress в мобильной версии?

Я создала страницу на домене - тема astra, с помощью плагина elementor на wordpress. Полностью с такой же темой и плагином создала страницу на субдомене (поддомене). Проблема заключается в следующем. Если открыть в смартфоне ссылку на домене, то...
С помощью соцсетей
У меня нет аккаунта Зарегистрироваться
Нажимая кнопку «Зарегистрироваться», я даю согласие на обработку своих персональных данных, указанных в форме регистрации.
С помощью соцсетей
У меня уже есть аккаунт Войти
Нажимая кнопку «Зарегистрироваться», я даю согласие на обработку своих персональных данных, указанных в форме регистрации.
Инструкции по восстановлению пароля высланы на Ваш адрес электронной почты.
Пожалуйста, укажите email, который Вы использовали для входа на сайт.