Задать вопрос
  • Что делать если я не могу научится самостоятельно писать код даже с опытом работы на реальном проекте?

    @alexalexes
    Значит, ни на работе, ни в университете вы не научились декомпозиции задач (разбивать задачи на подзадачи), оценивать сложность каждой задачи, ставить условия минимума для выполнения элемента задачи. Искать справочные источники для решения каждого элемента задачи.
    Здесь не в кодинге дело, а умение крутить-вертеть предметную область, с которой работаете.
    Ответ написан
    Комментировать
  • Как сделать, чтобы высота iframe была равна соотношению 16:9?

    @alexalexes
    Чтобы сохранить пропорции при отображении в любом браузере, нужно сделать контейнер под видео с относительным позиционированием:
    .video__container
    {
      position: relative;
    }

    И в него положить img от png файла с однотонным заполнением с нужным соотношением сторон (можно в виде встроенного бинарника сформировать ресурс, такой файл в эквиваленте png весит пару сотен байт).
    Для iframe сделать абсолютное позиционирование, чтобы можно было его приподнять над img блоком, с помощью z-index, и задать 100% ширину и высоту, чтобы его размер зависел от контейнера, а размер (точнее, пропорции) контейнера будет зависеть от размера img.
    iframe.video__iframe
    {
      position: absolute;
      z-index: 1;
      /* width и height устанавливаются в атрибутах iframe! */
    }

    В итоге получится такая конструкция:
    <div class="video__container">
      <img src="video-iframe-background-1920x1080.png"/>
      <iframe class="video__iframe" src="" width="100%" height="100%"></iframe>
    </div>

    Такой подход позволяет гибко настраиваться размерам контейнеру .video__container, или фиксировать один из его размеров. При этом, iframe всегда будет держать пропорции того изображения, которое заложено в img. И это будет работать практически на любом браузере не первой свежести.
    Ответ написан
    Комментировать
  • Как отправить массив файлов на сервер?

    @alexalexes
    См. документацию к formData.
    Для прикрепления файлов есть перегрузка метода append на 3 параметра, причем несколько файлов крепятся вот так:
    formData.append("userpic", myFileInput.files[0], "chris1.jpg");
    formData.append("userpic", myFileInput.files[1], "chris2.jpg");

    Обратите внимание на 1-й параметр, в нем нет попыток создать массив, formData должна сама это разрулить, если под одно имя поля последовательно применять append.
    Ответ написан
    1 комментарий
  • 2 роутера в одной подсети, каждый раздает свой wifi, почему не дает зайти в настройки 1го роутера по ip при подключении к wifi 2го роутера?

    @alexalexes
    1. На одном роутере нужно оставить включенной службу DHCP, чтобы только он выдавал IP адреса всем подключенным к нему устройствам в той же подсети, на которую настроена служба. На остальных роутерах служба DHCP должна быть выключена. Тем самым остальные роутеры должны работать в режиме свича.
    2. Собственный адрес роутера нужно перенастраивать, если не он раздает IP адреса. Желательно, зафиксировать MAC адреса роутеров в таблице маршрутизации в активной службе DHCP, чтобы роутеры всегда получали только для них предназначенные IP.
    Ответ написан
    Комментировать
  • Почему глючит видеокарта?

    @alexalexes
    Скачивайте всеми любимый ремонтниками видюх MATS и тестируйте.
    Ответ написан
    Комментировать
  • Может ли видеокарта 16 pin питаться от БП с 1 шнурком 8 pin на котором 2 штекера?

    @alexalexes
    Тут 12pin коннекторы откисают, работая на пределе конструкционной технологии, но народ упорно хочет поиграть в русскую рулетку, когда ему создали все условия, чтобы такого не было, оставив 8pin по 2.
    Ответ написан
    Комментировать
  • Как сделать проверку на значения в переменной?

    @alexalexes
    Вариант 1. Если надо проверить одно единственное булево выражение и что-то вывести, не отходя от склейки строки:
    td>".($row["ID_EMPLOYEE"] ==1 ? "первое значение" : "второе значение")." </td>

    Вариант 2. Когда у вас возможна более толстая логика вывода в каждой ветке if:
    echo 'Перед if прекращаем шлепать HTML закрывающейся кавычкой и точкой запятой';
    if(условие)
    {
      echo 'Шлепаем HTML по истине if-а';
    }
    else
    {
      echo 'Шлепаем HTML по ИНАЧЕ';
    }
    echo 'Продолжаем шлепать HTML';
    Ответ написан
    8 комментариев
  • Front-end разработчик обязан уметь верстать в разных программах?

    @alexalexes
    Какой бы программой вы не пользовались, вам нужно уметь всего лишь снимать метрики с графических примитивов с помощью линейки, пипеткой брать цвет, знать как извлечь коэффициент прозрачности и характеристики градиентов, блюров, снимать характеристики шрифта с текста. Больше ценится навык, как вы все эти параметры наиболее быстро запихнете в CSS или напишите шаблон для предпроцессора CSS. И если какая-та программа на выходе получит сырой CSS - как его дошлифовать до конечного результата?
    Ответ написан
    Комментировать
  • Возможно ли снять ошибку "Неоригинальный картридж" ecosys p3145dn НАВСЕГДА?

    @alexalexes
    Вариантов немного:
    1. Сбросить счетчик страниц.
    2. Заменить чип на картридже.
    Действует это до момента накопления макс. значения счетчика в чипе, тогда снова будет говорить, что неоригинальный картридж.
    Ответ написан
    Комментировать
  • Какой тип должна возвразать функция при скачивании файла?

    @alexalexes
    Если возвращается идентификатор файла - тип integer.
    Если возвращается полный путь к файлу или его url - тип string.
    Если возвращаются бинарные данные содержимого файла - тип string.
    Если возвращаются raw данные из буфера ob_* вместе с http заголовками и телом файла - тип string.
    Если файл открыт файловой функцией и берется ее указатель - смотрите какой тип возвращает эта функция для указателя.
    Ответ написан
    2 комментария
  • С помощью чего сделан эффект как на сайте https://www.fromscout.com/?

    @alexalexes
    Анимация по ключевым кадрам.
    animation: main-logo-texture 10s linear infinite;
    Ключевые кадры:
    @keyframes main-logo-texture {
        0% {
            transform: translate(0)
        }
    
        to {
            transform: translate(-99px)
        }
    }
    Ответ написан
    3 комментария
  • GA-J3455N-D3H нет сигнала через HDMI. Виноват процессор или разъём?

    @alexalexes
    Попробуйте этот совет:
    Надо подключить монитор по D-SUB, зайти в BIOS, в закладке Advanced установить CSM Support - Enabled, Video - Legacy. После этого должно работать через HDMI. Если заработает, попробуйте обновить BIOS, недавно вышла версия F3, возможно там этот косяк исправили.

    Источник: https://forum.ixbt.com/topic.cgi?id=9:69411
    Ответ написан
  • Почему не работает экран ноутбука при включении?

    @alexalexes
    Отнесите в сервис. Может быть все что угодно. От просто отвалился загрузчик - поправляется переконфигурацией БИОС за несколько минут, до отвала видеочипа - нужно проф. оборудование и компетентный мастер.
    Ответ написан
    Комментировать
  • Как кликнуть по элементу у которого один Class но элементов таких 10?

    @alexalexes
    Если не хотите forEach-ем, то переберите по старинке через for.
    let Nlist = document.querySelectorAll(".chain_cnt_head");
    for(let i = 0; i < Nlist.length; i++)
    {
       Nlist[i].click();
    }
    Ответ написан
    1 комментарий
  • Запоминает ли usb bluetooth свисток подключенные устройства при смене операционной системы?

    @alexalexes
    Учет подключенных устройств bluetooth осуществляется на уровне приложения выше драйверов донгла. В каких-то случаях ОС использует свою утилиту, в каких-то случаях можно использовать утилиту от производителя донгла (или может быть универсальная утилита). Сам донгл учетных данных не хранит.
    Ответ написан
    Комментировать
  • Modx Babel мультиязычность - как получить контекст во внешнем файле?

    @alexalexes
    При наличии параметра uri страницы, контекст ресурса можно получить так:
    $page = $modx->findResource($uri);
    $context_key = $page->get('context_key');
    Ответ написан
    Комментировать
  • Какое регулярное выражение использовать, что бы достать из текста все цифры?

    @alexalexes
    Сначала пишите патерн для лицевого счета, ориентируясь на "л/с" и на пробел после номера (см. Позитивный просмотр вперед/назад).
    Отдельно пишите патерн, чтобы получать даты (тупо по точкам и обязательному количеству цифр между ними).
    Потом пишите патерн, чтобы вытащить номер № - это посложней, так как только вы можете проанализировать, какие номера могут быть, но можно заглядыванием назад ловить номер (и опционально пробел) и читать до следующего пробела.
    Если порядок нахождения не важен, можете тупо по очереди сканировать текст этими тремя патернами.
    Если важен, то делаете один патерн из всех через пропуск определенного кол-ва символов (.)+ - обернуть нужно также как с условным просмотром вперед/назад.
    Ответ написан
    Комментировать
  • Что является разработкой клиентской части?

    @alexalexes
    Все окружение браузера, до чего дотягивается JS интерпретатор - DOM-дерево, window, куки, локальное хранилище, интерфейсы XHR (он же ajax), web_sockets, api к графике/звуку - это все клиентская часть приложения.
    Вы можете полностью создать одностраничный сайт без применения фреймворков, веб-сервера, и просто сохранить в виде html файла (плюс еще несколько статичных css, img, js, font файлов, но это можно использовать без поднятия настоящего сервера) - и это будет полноценное клиентское приложение без серверной части.
    Ответ написан
    Комментировать
  • Как реализовать получение уникального айди из базы данных?

    @alexalexes
    Ну, insert вы для себя открыли.

    я хотел сделать отдельный параметр в бд, который проверяется

    посмотрите, как пользоваться select-ом, да еще с входными параметрами, чтобы извлечь строку.

    заменить в ней значение,

    Ищем как пользоваться запросом c update, да еще с параметрами.
    PS: Если еще посмотрите, как пользоваться delete, то CRUD комплект вы изучили, как взаимодействовать с базой.
    PPS: cursor после выполнения insert может содержать свойство last insert id, но это не точно.
    Ответ написан
    Комментировать
  • Как быстро сделать список адресов для скачивания?

    @alexalexes
    Если прямо "на коленке" нужно написать и за 5-20 минут получить список url к определенной странице.
    То открываете консоль браузера F12.
    Открываете вкладку "элементы", чтобы изучать дерево документа.
    Также заходите во вкладку "консоль" и с помощью document.querySelector пытаетесь написать CSS селектор, чтобы дотянуться до нужного img узла изображения. Если вам нужна ссылка на то, что выводится тегом img, то забираете атрибут src. А оригинал изображения может лежать в соседнем атрибуте этого же тега, например, data-src - тогда забираем его.
    Далее, пробуем получить список узлов img по заданному селектору с помощью document.querySelectorAll.
    Если функция подхватывает все узлы, то результат готов. Вам нужно подставить в url-ы домен ресурса или адрес текущей страницы (без части запроса), так как ссылки могут быть относительны.
    Можно накопить результат в виде массива, перевести в JSON и забрать строчку JSON из консоли. Если еще проще, то склеить результат в строку через запятую и тоже забрать из консоли.

    В отдельных случаях одним CSS селектором можно не обойтись, чтобы забрать все ссылки, или img узлы лежат не в постоянной структуре.
    Тогда нужно в несколько этапов получать содержимое.
    Сначала нужно научиться дотягиваться до узла-контейнера списка элементов (элементы - не обязательно интересующие Img узлы, ими могут быть какие-нибудь карточки товаров - тоже контейнеры).
    Потом от контейнера-карточки пытаемся дотянуться до нужного изображения.
    Далее организуем forEach, чтобы перебрать контейнеры-карточки.
    Ответ написан