• Как восстановить сетевой интерфейс после iw wlp4s0 del?

    Можно создать новый сетевой интерфейс:
    iw dev wlp4s0 interface add wlan0 type station
    ip link set wlan0 up


    Либо просто перезагрузите устройство, после перезагрузки интерфейс должен подняться автоматически.
    Ответ написан
    Комментировать
  • Как удлать вирусную ссылку на сайте?

    В первом случаи домен в продаже, во втором пустая страница 404 Not Found от Nginx.
    Ответ написан
    Комментировать
  • Как инициализировать из __construct в static?

    В статическом классе нет магического метода `__construct`. Но вы можете использовать функцию, к примеру `instance()`, в функции `instance()` будет всё то же самое, что и в `__construct`, за некоторыми исключениями.

    Пример кода:

    class WhatsApp
    {
        private static ?WhatsApp $instance = null;
        private static string $limit;
        private static string $url;
    
    
        public static function instance(string $limit = '', string $url = '', string $method = ''): WhatsApp
        {
            if (self::$instance === null) {
                self::$limit = $limit;
                self::$url = $url;
    
                self::$instance = new self();
            }
    
            return self::$instance;
        }
    
        public static function test(): string
            return self::$url;
        }
    }


    Обратите внимание на то, что `instance` возвращает экземпляр нашего класса, то есть `self` или же `WhatsApp`.
    Вызвать всё это чудо можно с помощью:
    WhatsApp::instance('0', '/page?15')->test();
    Ответ написан
  • Как правильно создать многостраничный сайт на чистом HTML CSS JS?

    Немного не понимаю вашего вопроса, вы всё правильно делаете. Можно для каждой страницы создавать директорию, а в ней считывать index.html, но это немного не правильно. Хотя решит проблему, если у вас сотня страниц и разделов сайта, тогда будет логично разделить разделы на директории. Не совсем понял проблемы с первзагрузкой, страницы на вашем сайте и должны перезагружается, у вас ведь не SPA приложение, а HTML сайт.
    Ответ написан
  • Как округлить тысячные?

    Если число больше тысячи, то делим его на тысячу, либо сотни и приписываем к строке " тыс.".
    Если чисто больше миллиона, то делим его на миллион и получаем цифру 1 и приписываем к ней " млн.".

    Думаю логика понятна, пишите её сами. Ведь вы хотите чему то научится, а не чтобы за вас делали работу.

    UPD!
    По случайности мне пришлось написать аналогичное, мне необходимо было округлять большие суммы в тысячи, миллионы и т.д. Я решил, что будет полезно поделится этим с вами.

    Написал небольшую функцию, выглядит следующим образом:
    function num(number) {
        function number_format(number, decimals, dec_point, thousands_sep) {
            number = (number + '').replace(/[^0-9+\-Ee.]/g, '');
            let n = !isFinite(+number) ? 0 : +number,
                prec = !isFinite(+decimals) ? 0 : Math.abs(decimals),
                sep = (typeof thousands_sep === 'undefined') ? ',' : thousands_sep,
                dec = (typeof dec_point === 'undefined') ? '.' : dec_point,
                s = '',
                toFixedFix = function (n, prec) {
                    let k = Math.pow(10, prec);
                    return '' + Math.round(n * k) / k;
                };
    
            s = (prec ? toFixedFix(n, prec) : '' + Math.round(n)).split('.');
            if (s[0].length > 3) {
                s[0] = s[0].replace(/\B(?=(?:\d{3})+(?!\d))/g, sep);
            }
            
            if ((s[1] || '').length < prec) {
                s[1] = s[1] || '';
                s[1] += new Array(prec - s[1].length + 1).join('0');
            }
            
            return s.join(dec);
        }
    
        if (number <= 9999 && number >= -9999)  {
            return number_format(number, 0, '.', '');
        } else if(number <= 999999 && number >= -999999){
            return number_format(number/1e3, 2, '.', '') + ' тыс. ';
        } else if(number <= 999999999 && number >= -999999999){
            return number_format(number/1e6, 2, '.', '') + ' млн. ';
        } else {
            return number_format(number/1e9, 2, '.', '') + ' млрд.';
        }
    }


    Вызывается соответственно `num(integral/float)`
    Ответ написан
    1 комментарий
  • Стоит ли использовать emoji в верстке ‍♂️?

    Вы с какого устройства смотрите на этот эмодзи, с ПК с ОС WIndows? Он выглядит красиво. А вот другой пользователь будет смотреть со своего ПК и у него не будет шрифта с этими эмодзи, третий же будет смотреть с телефона, у него эти же эмодзи будут выглядеть по другому. Лучше всего используйте иконки по типу font awesome.
    Ответ написан
    Комментировать
  • Оцените верстку?

    Довольно странно брать чужие работы, портить их и спрашивать "ребят, а как вам моя верстка?" Вы из HTML хотя бы копирайт убрали бы :)

    Почему я это пишу? Да, конечно, нужно учится, но на своем опыте, а не чужом. Для меня и большинства других людей, которые когда либо были связаны с дизайном - самое сложное это найти свой стиль. А в вашем случаи вы берете чужой стиль. Нужно научится не верстать по чьим то работам, а придумывать своё - это главное и самое сложное. В том, чтобы расставить HTML теги и задать стили - нет ничего сложного.
    1759a97dcd9c0370ab61b5b868e49523.png
    Ответ написан
  • Как правильно делать паузы между запросами к api?

    Вероятнее всего вы заняты не тем. Конечно, самый легкий и простой вариант это со стороны Frontend стучатся в API с криками "есть что?" десять раз в секунду, но для чего?. Это сулит большими проблемами, к примеру, если таких запросов несколько, то новое соединение для текущего клиента не будет открыто, пока не выполнится предыдущий API запрос. А если реализовать через мультипоточность на API-сервере, то могут возникнуть проблемы с количеством запросов, как минимум можно скушать пару ГБ ОЗУ из-за сотен запросов за пару секунд от разных клиентов.

    Я не совсем понимаю вашу конкретную задачу, но я описал проблемы выше, может быть стоит не спрашивать у API "есть что новое?" несколько раз в секунду, а со стороны API говорить фронтенду о текущем состоянии и обновлять данные, если это действительно необходимо? Смотрите в сторону сокетов, они хорошо работают на стороне бекенда (если это PHP или не дай боже Python) и с ними легко работать на JS.
    Ответ написан
    Комментировать
  • Laravel Eloquent, where с несколькими вариациями значения столбца?

    Acrilo
    @Acrilo Автор вопроса
    Решение нашлось с помощью оператора 'whereIn('uid', [2, 6])' вместо 'orWhere()'

    https://laravel.com/docs/8.x/queries#additional-wh...
    Ответ написан
  • Как через PHP можно скачать файл с YandexDisk?

    Acrilo
    @Acrilo Автор вопроса
    Никакие сторонние библиотеки и не понадобились.

    Простой код для скачивания архива с сервера YaDisk по ссылке:

    <?php
     $base_url = 'https://cloud-api.yandex.net/v1/disk/public/resources/download?';
    
    /**
     * Ссылка на файл YaDisk
     */
    $link = 'https://disk.yandex.ru/d/X2H8NijOtWahmQ';
    
    
    /**
     * Формирование API ссылки
     */
    $final_url = $base_url . 'public_key=' . $link;
    
    
    /**
     * Получение данных ответа
     */
    $ch = curl_init($final_url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_exec($ch);
    
    $http_code = curl_getinfo($ch, CURLINFO_RESPONSE_CODE);
    curl_close($ch);
    
    /**
     * Проверка HTTP кода
     */
    if ($http_code === 200) {
        $json = json_decode(file_get_contents($final_url));
        $linkFile = $json->href;
    
        /**
         * Путь куда сохранять файл
         */
        $path = \Core\Services\Path\Path::public('tmp') . '/ar.zip';
        file_put_contents($path, file_get_contents($linkFile));
    
    } else {
        throw new RuntimeException('Ошибка 404. Страница файла указана неверно.');
    }
    Ответ написан
    Комментировать
  • Почему ubuntu лагает визуально?

    Нет, так и должно быть, если у вас (а у вас скорее всего) Ubuntu + Gnome.
    Ответ написан
    7 комментариев
  • Какую базу данных выбрать для интернет-магазина?

    На данный момент MSSQL аналогов нет, но пока у вас нет сотни миллионов записей, которые вы будете обрабатывать (к примеру получить посчитать стоимость по фильтрам, либо осуществить поиск в таблице и получить 10 млн. записей), вам не нужно думать КАКУЮ базу данных выбрать. Лучшим решением будет самая простая и распространённая, то есть MySQL или же лучше MariaDB.
    Ответ написан
    Комментировать
  • Как на основе Mysql базы сделать сайт-каталог?

    Универсальных решений не существует, каталог не будет знать что у вас за база данных, какая у неё структура и что делать со всеми этими данными. Если вам необходима помощь с созданием подобного каталога Вы можете написать мне на почту: zerxafun@gmail.com , либо в telegram: https://t.me/ZerxaFun
    Ответ написан
    Комментировать
  • Что учить laravel или ООП?

    Учите базы данных, а именно сперва основы SQL, а после базы данных по типу MS SQL или MySQL.
    Большая часть программирования, особенно в бизнес сфере связана с работами с базами данных, а какой язык и как выводит информацию - большинству не важно.

    Что касается конкретно вашего вопрос, не понимая ООП и PHP в целом из вас получится низкоквалифицированный разработчик, который будет лишь собирать части пазл между собой, а не создавать свои и со сложными задачами без хороших базовых знаний вы не справитесь. Говорю вам как человек, который изначально так же "познакомился с фреймворками", а после понял, что без них не могу написать банальный функционал в виду отсутствия опыта и/или знаний. Так, что, учите ООП + свой язык и базы данных.
    Ответ написан
    Комментировать
  • Нужно ли 32Gb RAM для обычного домашнего компьютера?

    Странный вопрос. 32GB ОЗУ для чего конкретно?
    Домашний компьютер - это понятие растяжимое, для одного домашний ПК - это устройство для просмотра youtube, vk и возможно почты/мессенджеров. Для таких целей и 4 / 8 вполне хватит.

    Для того, чтобы Вы сами себе ответили на этот вопрос - откройте диспетчер задач и просмотрите потребление ОЗУ, если уперлись в 90%, то возможно стоит задуматься об апгрейде. У самого ноутбук с базовыми 16GB ОЗУ, докупил ещё плашку на 16GB ради двухканала + под мои цели 16GB ОЗУ явно не хватает (работа с большими БД), запущенный докер, IDE и пара программ для работы + браузер. Но это сугубо мои задачи как я написал выше, Вы сами должны ответить на свой вопрос.
    Ответ написан
    Комментировать
  • Как лучше вывести контент в Ларавель по времени?

    Через функцию whereBetween('time', 'начальная дата', 'конечная дата');
    Ответ написан
    Комментировать
  • Как реализовать анимированное появление текста по буквам?

    Acrilo
    @Acrilo Автор вопроса
    Нашлось решение на чистом JS и CSS.

    JS
    function animateWord(word){
        let text = word.dataset.text;
        text.split('').forEach((letter,ind) => {
        let div = document.createElement('div');
        div.innerText = letter;
        setTimeout(()=> word.append(div),ind*200);
      })
    }
    
    const word = document.querySelector('.word');
    animateWord(word);


    CSS
    @keyframes letter{
      0% {opacity: 0; transform: translateY(-15px)}
      100% {opacity: 1; transform: translateY(0px)}
    }
    
    .word div {
      animation: letter 0.5s;  
      display: inline-block;
    }


    HTML, текст в атрибуте "data-text".
    <div class="word" data-text='Hello'></div>

    Пусть на сайте примере и выглядит немного не так и текст не в атрибуте HTML тега, но можно стилизовать под себя.
    Ответ написан
    Комментировать
  • PHP, MySQL. Как сложить числовые значения разных столбцов?

    Acrilo
    @Acrilo Автор вопроса
    Всё оказалось куда проще, очень долгое время мучился с данным вопросом, но решение нашел спустя пару минут после создания данной темы.
    Если кому понадобится подобное :)

    $int = 0; # Начальное значение
    foreach ($array as $value)
    {
    	$int += $value->int;
    }
    Ответ написан
  • Как сделать ссылку для скачивания php файла?

    Если у вас апач, то можно создать папку для скачивания файлов, к примеру: mySite.ru/downloadFile/
    И в .htaccess прописать запрет на "открытие" любых файлов.

    Либо же сделать проще и просто прописать во всех ссылках "download>", чтобы выглядело приблизительно так: <a href="https://site.ru/file.php" download>
    Ответ написан
    Комментировать