Full Stack web.
JS (Vanilla, jQuery, Vue);
PHP (Native, Laravel, ModX);
HTML+CSS (Flexbox, Grid, Animations, Adaptive);
Контакты
Местоположение
Россия

Достижения

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

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

Все теги (19)

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

Все ответы (35)
  • Как размыть 1/ 3 бэграунда?

    DcFanoiD
    @DcFanoiD
    Full Stack : web
    Попробуйте свойство backdrop-filter

    Ответ написан
  • Почему на YouTube в IE 11 нагрузка на ЦП низкая, в других браузерах высокая?

    DcFanoiD
    @DcFanoiD
    Full Stack : web
    Как уже выше отметили - дело в аппаратном ускорении видео. Я уже давно для YouTube использую Edge, потому что даже при просмотре 4k нагрузка на процессор минимальная. Очень хорошо экономит заряд батареи, а главное не шумит система охлаждения во время просмотра. Даже на дохлом Atom Z3735F можно смотреть 4k@60 без выпадающих кадров:
    https://www.youtube.com/watch?v=bitEqkTMcJE
    Ничего подобного ни на Mac ни тем более Linux не встречал.

    Чтобы добиться похожих результатов в Chrome, можно установить расширение h264ify которое принудительно переключит дефолтный для хрома VP9 кодек на H.264. Это разгрузит процессор, но с этим расширением не получится выставить качество выше 1080p.
    Ответ написан
  • Как сделать recaptcha в форме обязательной?

    DcFanoiD
    @DcFanoiD
    Full Stack : web
    У вас нет проверки капчи в коде обработчика.
    Посмотрите документацию: https://developers.google.com/recaptcha/docs/v3

    Проверка в вашем случае может выглядеть так (замените $key на ваш ключ):
    if(isset($_POST['g-recaptcha-response'])) {
        
        $captcha = $_POST['g-recaptcha-response'];
        $ip = $_SERVER['REMOTE_ADDR'];
        $key = 'PRIVATE KEY';
        $recaptcha_response = file_get_contents('https://www.google.com/recaptcha/api/siteverify?secret='.$key.'&response='.$captcha.'&remoteip='.$ip);
        $data = json_decode($recaptcha_response);
    
        if(isset($data->success) &&  $data->success === true) {
            //Код если капча пройдена
            $recepient = "mail@mail.ru";
            $name = trim($_POST["name"]);
            $phone = trim($_POST["phone"]);
            $mail = trim($_POST["mail"]);
            $message = "Имя: $name \nТелефон: $phone \nЭл. почта: $mail \nГород: $city";
            $pagetitle = "Новая заявка со страницы " . $_POST['page'];
            mail($recepient, $pagetitle, $message, "Content-type: text/plain; charset=\"utf-8\"\n From: $recepient");
        }
        else {
           //Код, если капча не пройдена
        }
    }
    Ответ написан
  • В чём разница вёрстки на флексах и блочно?

    DcFanoiD
    @DcFanoiD
    Full Stack : web
    На флексах можно быстро построить сетку с нормальным выравниванием. Разнести блоки по краям, выровнять по центру, задать одинаковую высоту, даже изменить порядок - полезных свойств у flexbox много. А ещё позволяет забыть о float и inline-block как о страшном сне.

    Просто судя по колличеству стилей - флексы явно уступают

    Основные свойства пишутся только для flex-контейнера, это как правило 2-3 строки

    в плане кроссбраузерности насколько я понимаю могут возникнуть проблемы

    IE10+, никаких проблем.
    Ответ написан
  • Найти строку в txt файле и удалить ее?

    DcFanoiD
    @DcFanoiD
    Full Stack : web
    Содержимое файла document.txt
    Строка 1
    Строка 2
    Ещё строка...
    Строка 4
    Строка 5

    Функция
    <?php
    /**
     * @param string $stringToCut   Target string to cut
     * @param string $path          Path to file
     * 
     * @return int                  Number of cutted lines
     */
    function cutLine(string $stringToCut, string $path) {
        $result = 0;
        if(is_array($data = file($path))) {
            foreach ($data as $key => $value) {
                if($stringToCut == trim(preg_replace('/\s+/', ' ', $data[$key]))) {
                    unset($data[$key]);
                    $result++;
                }
            }
            if($result > 0) file_put_contents($path, $data, LOCK_EX);
            return $result;
        }
    }
    
    /**
     * Пример:
     * Вырезать из файла document.txt строку "Ещё строка..." и пересохранить его. 
     * Функция вернет количество вырезанных строк.
    */
    cutLine('Ещё строка...', 'document.txt');
    Ответ написан

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

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