Делаю красиво в Kontur
Контакты
Местоположение
Россия, Новосибирская обл., Новосибирск

Достижения

Все достижения (3)

Наибольший вклад в теги

Все теги (55)

Лучшие ответы пользователя

Все ответы (74)
  • Как настроить редирект на https в.htaccess?

    OAPrilepa
    @OAPrilepa
    Frontend developer
    RewriteCond %{HTTP:X-HTTPS} !1
    RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
    Ответ написан
    Комментировать
  • Как передать куки вторым запросом в cUrl?

    OAPrilepa
    @OAPrilepa
    Frontend developer
    Старый код, логинимся и получаем куки в строку:
    // Отправка POST запроса с получением печенек:
    function send_post_get_cookie($URL='', $PostData=Array(), $cookie='')
    {
        // Отсекаем пустые вызовы:
        if (strlen($URL)<=0) return false;
        // Скопировал строку из FireBug:
        $ua = 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; ru; rv:1.9.2.13) Gecko/20101203 MRA 5.7 (build 03796) Firefox/3.6.13';
        // Инициализация объекта:
        $ch = curl_init($URL);
        // показывать заголовки (в них куки):
        curl_setopt($ch, CURLOPT_HEADER, 1); 
        // не показывать тело страницы (для экономии траффика):
        curl_setopt($ch, CURLOPT_NOBODY, 1); 
        // это чтобы прикинуться браузером:
        curl_setopt($ch, CURLOPT_USERAGENT, $ua);
        // можно ставить еще вот это, если удаленный сервер проверяет:
        // curl_setopt($ch, CURLOPT_REFERER, $URL);
        curl_setopt($ch, CURLOPT_POST, 1);
        // включение полей POST в запрос:
        curl_setopt($ch, CURLOPT_POSTFIELDS, $PostData);
        // если нужны печеньки, установим:
        if (strlen($cookie)>0)
            curl_setopt($ch, CURLOPT_COOKIE, $cookie);
        // тормозим стандартный вывод:
        ob_start();
        // запускаем запрос:
            curl_exec ($ch);
            curl_close ($ch);
            // получаем заголовки в массив:
            $headers = explode("\n", ob_get_contents());
        ob_end_clean();
        // выдираем строку печенек:
        for ($i=0, $cnt=count($headers); $i<$cnt; $i++) 
            if (strpos($headers[$i], 'Set-Cookie:') !== FALSE)
                $cookie .= substr($headers[$i], strpos($headers[$i], 'Set-Cookie:')+strlen('Set-Cookie:')); 
        // и возвращаем результат:
        return $cookie;
    }


    А потом используем ее в других запросах, к примеру загружаем файл после авторизации:
    // Сохранение файла с удаленного хостинга:
    function save_get_file($URL='', $cookie='')
    {
        if (strlen($URL)<=0) return false;
        $filename = $_SERVER['DOCUMENT_ROOT'].'/upload/tmp/'.date('YmdHis_').rand(99,9999999).'.tmp'; 
        $fp = fopen($filename, 'w');
        if (!$fp)
            return false;
        else
        {
            $ua = 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; ru; rv:1.9.2.13) Gecko/20101203 MRA 5.7 (build 03796) Firefox/3.6.13';
            $ch = curl_init($URL);
            curl_setopt($ch, CURLOPT_USERAGENT, $ua);
            curl_setopt($ch, CURLOPT_FILE, $fp); // чтобы выгрузить в файл;
            if (strlen($cookie)>0)
                curl_setopt($ch, CURLOPT_COOKIE, $cookie);
            curl_exec ($ch);
            curl_close ($ch);
            return $filename;
        }
    }
    Ответ написан
    Комментировать
  • Как убрать монозвук в AirPods на windows 10?

    OAPrilepa
    @OAPrilepa
    Frontend developer
    Насколько мне известно, эту проблему не решить.
    Т.е. либо устройство работает в режиме наушников (без микрофона), тогда звук в хорошем качестве, либо в режиме гарнитуры - тогда звук моно.
    Вот тут подробно про кодеки и матчасть: https://habr.com/ru/post/427997/
    Ответ написан
    1 комментарий
  • Как вывести на сайт консоль?

    OAPrilepa
    @OAPrilepa
    Frontend developer
    Думаю, можно сделать на frontend форму с textarea, стилизовать его под консоль.
    На js ловить нажатие enter и забирать последнюю строчку.
    Отправлять ее ajax'ом на backend.
    А там уже исполнять (php exec) и возвращать ответ.
    Который на js (ajax callback) вставлять дальше в textarea.
    Ответ написан
    Комментировать

Лучшие вопросы пользователя

Все вопросы (1)