В чем может быть проблема с cURL?

Здравствуйте, уважаемые программисты. Столкнулся с непонятной проблемой.
Пытаюсь сделать запрос к странице через cURL. Есть функция, туда передаю ссылку из БД. Далее в функции идет запрос и возвращается необходимый мне результат. Но... Какую бы ссылку из БД я не передал, по итогу получаю ошибку запроса: Could not resolve host: https&
Проверяю в функции ссылку, отображает корректно, а вот в запросе, почему то нет.
Вот как запрос делаю:
$options = array(
             CURLOPT_RETURNTRANSFER => true,     // return web page
             CURLOPT_HEADER         => false,    // do not return headers
             CURLOPT_FOLLOWLOCATION => true,     // follow redirects
             CURLOPT_USERAGENT      => "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.186 Safari/537.36 OPR/51.0.2830.55", // who am i
             CURLOPT_REFERER => 'http://yandex.ru/clck/jsredir?from=yandex.ru%3Bsearch%3Bweb%3B%3B&text=&etext=1487.Q5j3kkG7vQN_Z0SlR',
             CURLOPT_AUTOREFERER    => true,     // set referer on redirect
             CURLOPT_CONNECTTIMEOUT => 120,      // timeout on connect
             CURLOPT_TIMEOUT        => 120,      // timeout on response
             CURLOPT_MAXREDIRS      => 10,       // stop after 10 redirects
             CURLOPT_SSL_VERIFYPEER      => FALSE,
             CURLOPT_SSL_VERIFYHOST      => FALSE,
             );
             // Запросим страницу и данные по указанной ссылке
             $ch      = curl_init($url);
             curl_setopt_array( $ch, $options );
             $content = curl_exec( $ch );
             $err     = curl_errno( $ch );
             $errmsg  = curl_error( $ch );
             $header  = curl_getinfo( $ch );
             curl_close( $ch );

$url - входная переменная. Ничего с ней больше в функции не делаю. echo выводит корректную ссылку.
Вот что получаю в ответ от cURL:
Array
(
    [url] => HTTP://https&/
    [content_type] => 
    [http_code] => 0
    [header_size] => 0
    [request_size] => 0
    [filetime] => -1
    [ssl_verify_result] => 0
    [redirect_count] => 0
    [total_time] => 0.252598
    [namelookup_time] => 0
    [connect_time] => 0
    [pretransfer_time] => 0
    [size_upload] => 0
    [size_download] => 0
    [speed_download] => 0
    [speed_upload] => 0
    [download_content_length] => -1
    [upload_content_length] => -1
    [starttransfer_time] => 0
    [redirect_time] => 0
    [redirect_url] => 
    [primary_ip] => 
    [certinfo] => Array
        (
        )

    [primary_port] => 0
    [local_ip] => 
    [local_port] => 0
)

Ничего не понимаю, что такое может быть?
  • Вопрос задан
  • 146 просмотров
Решения вопроса 1
402d
@402d
начинал с бейсика на УКНЦ в 1988
& на мысли не наталкивает ? Что такое html entity знаете ?
В общем или в базу муссора насовали или позже обработали строку.
Есть два подхода (крайности), к тому как заносить данные в базу данных.
1) Все проверяем по куче условий, при любой ошибке отказываемся.
2) Пофиг - записываем все как есть, потом будем опасное экранировать.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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