Задать вопрос
  • Применяется ли сейчас протокол LLC?

    vvpoloskin
    @vvpoloskin Куратор тега Компьютерные сети
    Инженер связи
    Я знаю сети, работающие до сих пор на x.25, там LLC используется. В привычном Ethernet - нет.

    Ethernet это типо сколько проводочков надо и какие МГц через них передавать.

    Физика - не вся часть Ethernet, там очень много логики. Например, он может быть поверх E1, PPP (l2tp), WDM, SCPC, а там своя физика. Ethernet - 1 и 2 уровни OSI. Вон посмотрите все, что входит в это понятие.
    Ответ написан
    3 комментария
  • Как сделать диагональную линию на от угла до угла блока?

    DeLaVega
    @DeLaVega
    Верстаю, фронтэндю =)
    Запрос в гугл (css diagonal line through div): https://www.google.com/search?q=css+diagonal+line+...

    Первая же ссылка: https://stackoverflow.com/questions/17602291/diago...

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

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    cipher /w:c:\
    Ответ написан
    Комментировать
  • JavaScript игнорирует условие if и выдает сразу конечный результат. Почему?

    alexey-m-ukolov
    @alexey-m-ukolov Куратор тега JavaScript
    В условиях равно должно быть двойным/тройным. Одинарное равно - это присваивание, а не сравнение.
    if (
      document.getElementById('apple').style.display == 'none' &&
      document.getElementById('shoe').style.display == 'none' &&
      document.getElementById('book').style.display == 'none' &&
      document.getElementById('purse').style.display == 'none'
    ) {
       document.getElementById('begin').style.display = 'none';
    }


    Кроме того, такая механика вообще не будет работать - ваше условие вызовется один раз при загрузке страницы и никакие последующие изменения его не заставят сработать. Вам нужно вынести эту логику в функцию и добавить её вызов в каждый обработчик клика.
    Ответ написан
    7 комментариев
  • Как переместить в конец массива элементы имеющие определённое свойство?

    Vlad_IT
    @Vlad_IT Куратор тега JavaScript
    Front-end разработчик
    Можно при помощи sort
    arr.sort((a, b) => !b.pos - !a.pos)
    UPD: лучше вот так
    arr.sort((a, b) => ('pos' in a) - ('pos' in b))
    чтобы не было проблем с значениями false, undefined, null и.т.д.
    Ответ написан
    1 комментарий
  • Что делаю не так в jQuery калькуляторе расчета стоимости?

    0xD34F
    @0xD34F Куратор тега JavaScript
    $("#box1:checked, #box2:checked").val()

    Метод val может вернуть только одно значение. Так что давайте-ка получим все и просуммируем их:

    $('#logistic input:checked').get().reduce((acc, n) => acc + +n.value, 0)
    Ответ написан
    1 комментарий
  • Есть ли в открытом доступе инструменты компьютерной лингвистики с целью анализа предложений русского языка?

    deepblack
    @deepblack
    Готового решения нет, но возможно вас заинтересуют следующие проекты:

    • Dostoevsky - Sentiment analysis library for russian language

    • Natasha - библиотека для поиска и извлечения именованных сущностей (Named-entity recognition) из текстов на русском языке. На данный момент разбираются упоминания персон, даты и суммы денег.
    • Yargy is a Earley parser, that uses russian morphology for facts extraction process, and written in pure python
    • razdel — библиотека для разделения русскоязычного текста на токены и предложения. Система построена на правилах.


    В догонку
    https://github.com/yandex/tomita-parser

    SyntaxNet (ссылка на Хабр) — это основанная на TensorFlow библиотека определения синтаксических связей, использует нейронную сеть. В настоящий момент поддерживается 40 языков, в том числе и Русский.

    UPD (17.03.2020):
    • Az.js A NLP library for Russian language
    • isanlp Natural language processing tools for English and Russian (postagging, syntax parsing, SRL, NER, language detection etc.)
    • russiannames Russian names parsers, gender identification and processing tools
    • rulemma Лемматизатор для русскоязычных текстов
    Ответ написан
    3 комментария
  • Можно ли поставить озу с большей частотой чем поддерживает процессор и материнка?

    @pfg21
    ex-турист
    да можно, частота указанная на титле памяти это максимальная рабочая частота.
    она вполне будет работать на меньших частотах.
    Ответ написан
    Комментировать
  • Зачем передают объект в функцию вот так?

    mannaro
    @mannaro Куратор тега JavaScript
    Умею профессионально гуглить
    Это spread оператор. Такая запись просто создаёт объект, в который копирует все ключи из другого объекта. Это просто синтаксический сахар для Object.assign({}, anyObj);

    Очевидно, так надо делать - когда это нужно. И не надо делать, когда это не нужно. Если надо скопировать объект, скопировать объект и добавить в него новые ключи, объединить 2 объекта. Развитие этих конструкций получило после популяризации философии immutable.
    Ответ написан
    Комментировать
  • Как найти элемент массива с нужным id?

    alexey-m-ukolov
    @alexey-m-ukolov Куратор тега JavaScript
    let arrayFirst = [2, 5, 8, 1];
    let arraySecond = [
    {id: 34, name: 'test'}, 
    {id: 5, name : 'test1'}, 
    {id: 123, name: 'test2'}
    ];
    
    // Если нужны все
    const all = arraySecond.filter((y) => arrayFirst.includes(y.id));
    
    // Если только первое совпадение
    const first = arraySecond.find((y) => arrayFirst.includes(y.id)));
    Ответ написан
    Комментировать
  • Как вернуть первоначальное положение фигуры после того как уберу курсор с нее?

    0xD34F
    @0xD34F Куратор тега JavaScript
    $('.block').on('mouseout', function() {
      this.style.transform = '';
    });
    Ответ написан
    Комментировать
  • Наговнокодил, на сколько все плачевно?

    alexey-m-ukolov
    @alexey-m-ukolov Куратор тега PHP
    Классическая sql-инъекция.
    Пароль в md5.
    Сначала делается запрос, а потом проверяется, что логин и пароль заполнены.
    Сначала используются данные запроса, потом проверяется, что он был успешен.
    Блоки условий не обёрнуты в скобки.
    Пароль и логин зачем-то сохраняются в куки.
    У кук нет флага http-only.

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

    Compolomus
    @Compolomus Куратор тега PHP
    Комполом-быдлокодер
    Смотрите action формы, если пустой значит на тот же файл, где форма
    Возможно там ajax обработчик, смотрите куда обращается обработчик ajax
    Ответ написан
    Комментировать
  • Как лучше делать связи между таблицами?

    JhaoDa
    @JhaoDa
    LaravelRUS Team
    «Связь» (Foreign keys) в БД ≠ связь в коде, следовательно вопрос бессмыслен.
    Ответ написан
    Комментировать
  • Как менять позиции у background в зависимости от нажатого input?

    romanko_vn
    @romanko_vn
    .icon_circle-empty-new {
       background: url(/lop2.png) 22px 0px;
    }


    $('input[name="PAY_SYSTEM_ID"]').on("click", function() {
    	var value = $(this).val();
            if (value == 1){
                $(this).toggleClass('icon_circle-empty icon_circle-empty-new');
            }
    
            else if (value == 2){
            // меняем стиль
            }
           //... и так далее
    });
    Ответ написан
    Комментировать
  • Как отсортировать массив?

    HeadOnFire
    @HeadOnFire
    PHP, Laravel & WordPress Evangelist
    Функция uksort()

    // Берем входящий массив:
    $input = [
      [
    	  'gq_address'     => '188.120.254.140',
    	  'gq_hostname'    => '•   RGPlay | DarkRP [Быстрая загрузка]',
    	  'gq_maxplayers'  => 128,
    	  'gq_numplayers'  => 0,
    	  'gq_online'      => true,
    	  'gq_port_client' => 27015,
      ],
      [
    	  'gq_address'     => '62.109.18.242',
    	  'gq_hostname'    => 'Default Breach Server',
    	  'gq_maxplayers'  => 128,
    	  'gq_numplayers'  => 0,
    	  'gq_online'      => true,
    	  'gq_port_client' => 27015,
      ],
    ];
    
    // Определяем желаемый порядок ключей:
    $order = [
    	'gq_hostname',
    	'gq_address',
    	'gq_port_client',
    	'gq_online',
    	'gq_numplayers',
    	'gq_maxplayers',
    ];
    
    // Перебираем элементы входящего массива и сортируем их по ключам:
    $output = array_map( function($array) use ($order)
    {
            // Эта функция сортирует по ключам
    	uksort( $array, function($a, $b) use ($order)
    	{
    		$a_desired_position = array_search($a, $order, true);
    		$b_desired_position = array_search($b, $order, true);
    
                    // Вот тут вся магия:
                    // нужно вернуть отрицательное число, 0 или положительное число, 
                    // в зависимости от положения одного элемента относительно другого.
    		return $a_desired_position - $b_desired_position;
    	} );
    
    	return $array;
    }, $input );
    
    var_dump($input);
    var_dump($output);


    Вот что мы получаем в итоге:

    // Входящий массив:
    array:2 [▼
      0 => array:6 [▼
        "gq_address" => "188.120.254.140"
        "gq_hostname" => "•   RGPlay | DarkRP [Быстрая загрузка]"
        "gq_maxplayers" => 128
        "gq_numplayers" => 0
        "gq_online" => true
        "gq_port_client" => 27015
      ]
      1 => array:6 [▼
        "gq_address" => "62.109.18.242"
        "gq_hostname" => "Default Breach Server"
        "gq_maxplayers" => 128
        "gq_numplayers" => 0
        "gq_online" => true
        "gq_port_client" => 27015
      ]
    ]
    // Отсортированный массив:
    array:2 [▼
      0 => array:6 [▼
        "gq_hostname" => "•   RGPlay | DarkRP [Быстрая загрузка]"
        "gq_address" => "188.120.254.140"
        "gq_port_client" => 27015
        "gq_online" => true
        "gq_numplayers" => 0
        "gq_maxplayers" => 128
      ]
      1 => array:6 [▼
        "gq_hostname" => "Default Breach Server"
        "gq_address" => "62.109.18.242"
        "gq_port_client" => 27015
        "gq_online" => true
        "gq_numplayers" => 0
        "gq_maxplayers" => 128
      ]
    ]


    Вывод: учите матчасть.
    Ответ написан
    Комментировать
  • Как получить доступ к переменной PHP?

    @Vitsliputsli
    Ваша переменная по-факту объявлена внутри функции load_tpl, соответственно извне (даже в другом вызове той же функции) видна не будет.
    Ответ написан
    Комментировать
  • Как скрывать блок по клику вне его?

    0xD34F
    @0xD34F Куратор тега JavaScript
    Если надо по-быстрому добиться желаемого поведения...
    document.addEventListener('click', function(e) {
      if (!e.target.closest('.tileset-showitems')) {
        tilesetShowListRemove();
      }
    });

    Но вообще, я бы код переписал - убрал бы инлайновые обработчики клика, класс бы назначал самому блоку, а не вложенному элементу.

    - .active {
    + .active .box {

    const containerSelector = '.tileset-showitems';
    const buttonSelector = `${containerSelector} .tileset-showitems-trigger`;
    const activeClass = 'active';
    const closeAllExcept = container => document
      .querySelectorAll(`${containerSelector}.${activeClass}`)
      .forEach(n => n !== container && n.classList.remove(activeClass));
    
    document.addEventListener('click', ({ target: t }) => {
      const button = t.closest(buttonSelector);
      const container = t.closest(containerSelector);
    
      if (button) {
        container.classList.toggle(activeClass);
      }
    
      closeAllExcept(container);
    });
    
    window.addEventListener('keydown', e => e.key === 'Escape' && closeAllExcept());
    Ответ написан
    Комментировать
  • Критично ли ECC для рядового SQL+1C сервера?

    Jump
    @Jump
    Системный администратор со стажем.
    Критично ли ECC для рядового SQL+1C сервера?
    Зависит от ситуации.

    без тонны пользователей
    - нет, не критично.

    Нужно понимать что такое ECC и от чего она защищает.
    Ошибки при работе с памятью случаются это факт.
    Но случаются они крайне редко.
    Если вы словите такую ошибку - вылетит программа, зависнет система. В общем получите сбой в работе и остановку сервиса на некоторое время.
    И тут надо думать - насколько вероятен такой сбой и насколько он допустим.

    Если у вас один сервер - вероятность сбоя очень низкая. Раз в пять лет в среднем.
    Если у вас 300 серверов - вероятность повышается в 300раз - раз в неделю в среднем будете ловить такую проблему.

    Если у вас десять пользователей на сервере - ну подождут они 15минут пока сервер перегрузится. Никаких особых убытков не будет.
    Банально - десять человек получающих 300рублей в час не будут работать 15минут - 750рублей цена простоя.

    Если у вас там 500пользователей - уже другой коленкор. Пятнадцать минут простоя уже только по зарплате под 40тыс.
    Ответ написан
    2 комментария
  • Как составить запрос выбора из двух таблиц?

    orlov0562
    @orlov0562
    I'm cool!
    Гугли JOIN.

    При такой структуре
    product.id
    product.title
    product.seller_id
    
    seller.id
    seller.name
    seller.cat_id


    Запрос будет вида
    SELECT * FROM product 
    LEFT JOIN seller ON product.seller_id = seller.id 
    WHERE seller.cat_id=1
    Ответ написан
    1 комментарий