• Как добавлять товары в битриксе по 2 в корзину?

    Dima_So
    @Dima_So
    Experientia est optima magistra
    У товара во вкладке "Торговый каталог" -> Параметры
    Укажите нужное значение "Коэффициент единицы измерения"
    Ответ написан
    3 комментария
  • Почему метод match не работает RegExp включающий JS-переменную?

    alexey-m-ukolov
    @alexey-m-ukolov Куратор тега JavaScript
    Потому что у вас в regex содержится обычная строка, а не объект регулярного выражения.
    Собирать этот объект из строки нужно так: new RegExp('[' + v + ']', 'g');
    https://developer.mozilla.org/en-US/docs/Web/JavaS...
    Ответ написан
    2 комментария
  • Как решить задачу с массивами на JS?

    NeiroNx
    @NeiroNx
    Программист
    все правила мне лень читать и описывать, но по быстрому - как то так:
    function updateRecords(id, prop, value) {
      if(collection.hasOwnProperty(id))if(prop!="tracks"){
        if(value!=""){collection[id][prop]=value;}else{delete(collection[id][prop])}
      }else{
        if(!collection[id].hasOwnProperty("tracks"))collection[id]["tracks"]=[];
        if(value!="")collection[id]["tracks"].push(value)
      }
      return collection;
    }
    Ответ написан
    1 комментарий
  • Как реализовать удаленный доступ к SSH, имея серый ip?

    akelsey
    @akelsey
    Копать в сторону "ssh reverse tunnel".
    Ответ написан
    Комментировать
  • Почему перестал работать сайт при смене php с 7.4 на 8.0.1?

    @anton99zel Куратор тега 1С-Битрикс
    29а класс средней школы №7
    Обновите модули, особенно сторонние aspro.optimus, видимо, сам битрикс, затем переходите на версию выше. И если переходить выше, то ставьте 8.2
    Ответ написан
    Комментировать
  • Как поменять формат вывода json?

    @alexalexes
    Попробуйте использовать опцию JSON_FORCE_OBJECT в функции json_encode.
    https://www.php.net/manual/ru/json.constants.php
    Добавлено:
    Ну, тогда item-ы кодируйте стандартной функцией, а сборку массива делайте кастомную:
    $imported_items[] = json_encode($product, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT | JSON_FORCE_OBJECT);
    ...
    $preview_items[] =  json_encode($preview_product, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT | JSON_FORCE_OBJECT);
    ...
    file_put_contents(sprintf(IMPORT_FILE, $id), '['.join(',', $imported_items).']');
    file_put_contents(sprintf(PREVIEW_FILE, $id), '['.join(',', $preview_items).']');
    Ответ написан
    1 комментарий
  • Как вычислить виновника из-за которого отваливается интернет с какой-то периодичностью в маленькой сети?

    trapwalker
    @trapwalker
    Программист, энтузиаст
    Такого рода проблемы все и всегда решаются однотипно.
    1. Необходимо сформулировать критерии наличия проблемы.
    Как именно пропадает интернет, насколько часто, как надолго. Это нужно для диагностики. поиска причины и определения ушла ли проблема после принятия каких либо мер.
    2. Делить проблему на части и проверять части по отдельности.
    Самый эффективный способ делить - это пополам. Отсекаем часть сети и проверяем наличие проблемы в обеих частях (если есть возможность) или в одной из частей.
    3. Когда найден минимальный проблемный участок, который уже нельзя или бессмысленно делить - заменяем его.
    4. Помним, что чаще всего сложные проблемы - это композиция нескольких более простых. которые по отдельности могут не проявляться. В вашем случае может быть проблема, связанная с нагрузкой на роутер, например, которую создает один из услов из-за плохого контакта обжима и большого объёма биттых пакетов. Устранив одну из причин, вы, может быть, сделаете проявления проблемы реже, но не устраните её полностью. К примеру, если замените ротуер, битые пакеты будут всё равно будут нагружать вашу сеть и портить ее производительность, но это будет не так очевидно. Переобжав коннектор вы избавитесь от части нагрузки, но еслив ваш ротуер работал на переделе, то лишний вафай-клиент или тяжелый видос в сети сможет его снова нагрузить до критического снижения производительности.

    Итак, пробежимся по перечисленным пунктам сначала.
    1. Критерии. Поиск критериев - это часть решения. Обычно в этом случае нуно сорать необходимую статистику. Есть куча софта, который это умеет делать, но пинг есть всегда под рукой.
    Для этой тулзы есть две полезных опции: ключ для бесконечного пинга и размер пакета.
    В разных ОС эти ключи немного разные, поэтому ищите их отдельно, у меня нет винды под рукой, поэтому не стану на этом заострять.
    Скаж лишь, что пинговать лучше большими пакетами, жалетально превышающими размер TTL, прописанный в роутере. Тогда такой пинг будет реже проскакивать в периоды хорошей связи, то есть выловит больше пролблем.
    Пинговать нужно в отдельных окнах сразу несколько хостов:
    - ya.ru - этот хост всегда отвечает на пинги и выявит проблемы с DNS
    - 8.8.8.8 - это гугловый DNS-сервер, тоже всегда отвечает на пинги, покажет, что связь с инетом есть даже если DNS, прописанныйна компе не правильно работает.
    - 192.168.0.1 - или какой там IP у вашего роутера. Нужно. чтбы отделить проблемы с инетом от проблем с внутренней связностью до роутера
    - 192.168.0.x - ip одного из компов в сети. Я обычно пингую несколько компов, доступных через баксимальное число потенциально проблемных узлов - ethernet-розеток, свичей, вайфай-соединений... Этот пинг поможет понять где проблема, во внутрисетевой связности или в последней миле.

    Учтите, что проблемы часто бывают комбинированные и каждое сочетание симптомов будет свидетельствовать о раных проблемах.
    Да, тревожным принаком может служить не только пропадание пакетов, но и скачки в длительности их возврата, особенно если такие длительности достигают 500мс и выше. Но и скачки от 3мс до 250мс тоже будут свидетельствовать о каких-то проблемах.

    Запускать пинг на всех компах лучше одновременно и на некоторое время. Например минут на 20. Потом по статистике будет видно сколько где пакетов пропало.

    2. Если критерии наличия проблемы позволяют, то можно попробовать отрубать части сети и смотреть наличие проблемы. Это я в том смысле, что если проблема происходит в среднем раз в пару-тройку часов, то отрубать на многие часы части сети при диагностикем ожет быть неприемлемым.
    Редкеи пробемы дольше отлавливать. Но напоминаю, что критерии можно детализировать, ведь если пакеты у вас пропадат относительно редко, то скачки времени их возврата могут случаться чаще и подсвечивать проблему. Также можно сделать рамер пакета близким к максимальному, это должно тоже в некоторых случаях участить проявление проблемы.
    Иногда не мешает нагрузить сеть комированием по локалке большого файла. В линуксе можнно с помощью утилиты tc послать большой поток рандомных байт на любой сокет..
    3. Плавающие проблемы случаются из-за плохого обжима, перебитого жверью кабеля, перегрызенного UTP в плинтусе, из-за умиращих конденсаторов в блоке питания роутера (БП может не выдавать необходимого при нагрузках тока, но вольтметром такая неисправность не будет различима без нагрузки). Вообще старые (да и не только) роутеры могут страдать поплывшими электролитическими конденсаторами не только в блоках питания.
    Хорошо, когда можно подменить роутер.
    4. ну с четвертым пунктом ничего не пососветуешь, только разделать и тестировать все по отедльности и в разных сочетания и да поможет нам ктулху.

    А для тех, кто дочитал этот опус до конйа - интересная задачка. Что пингуют эти команды, как и почему?
    ping 1.1
    ping 2130706433

    Тех, кто знает, попрошу не спойлерить=)
    Пусть для кого-то будет сюрпризом этот дивный мир=)

    UPD. Простите за адское количество опечаток в тексте. Писал в спешке и с непривычной клавиатуры. Исправлю всё попозже. Не ожидал, что многим ответ придётся по душе. Вроде ж накапитанил как мог.
    Ответ написан
    5 комментариев
  • Можно ли сделать интерфейс адаптивным, не переписывая весь CSS через media query's?

    delphinpro
    @delphinpro Куратор тега CSS
    frontend developer
    Обычно нет других вариантов. Если верстка гавно (в эту категорию входит верстка с использованием пикселей), то придется все переопределять в медиазапросах.

    Но даже если размеры задаются в rem, то не всегда достаточно прописать только font-size для :root. Всё же приходится кое-что переопределять, хотя и значительно меньше.
    Ответ написан
  • Как убрать проверку на содержимое?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    this.textContent = this.textContent != "2" ? "2" : "1";
    Ответ написан
    4 комментария
  • Почему не роботает Slick?

    irtek
    @irtek
    Wordpress-addicted
    Так у вас опечатка. Вместо "type" "src" должно же быть в третьей строке, где подгружаете main.js
    У вас код запуска слайдера не грузится.

    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.3/jquery.min.js"></script>
    <script src="js/slick.min.js"></script>
    <script src="js/main.js"></script>
    Ответ написан
    1 комментарий
  • Можно ли сделать дамп MySQL БД из консоли Linux, исключив из него определенные поля определенных таблиц?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    https://dba.stackexchange.com/questions/34887/mysq...

    советы примерно следующие:
    * сделать выборку по полям и сдампить в Csv
    * сделать выборку во временную таблицу и уже ее дампить
    Ответ написан
    5 комментариев
  • Как в php сравнить два огромных txt файла до 100гб, удалив дубликаты?

    2ord
    @2ord
    На POSIX системах можно использовать fgrep:
    $ cat /tmp/file1.txt
    aaa
    bbb
    ccc
    $ cat /tmp/file2.txt
    bbb
    123
    aaa
    $ fgrep -f /tmp/file1.txt /tmp/file2.txt
    bbb
    aaa


    Так что на PHP как-то так:
    $output = shell_exec('fgrep -f /tmp/file1.txt /tmp/file2.txt > /tmp/dups.txt');


    Однако, если требуется выполнять какие-то дополнительные манипуляции, тогда, возможно, лучше сразу импортировать в СУБД.

    Добавлено:
    упустил факт, что помимо дубликатов нужно оставить и неповторяющиеся значения. Тогда так:

    $ sort -u /tmp/file1.txt /tmp/file2.txt
    123
    aaa
    bbb
    ccc


    $output = shell_exec('sort -u /tmp/file1.txt /tmp/file2.txt > /tmp/dups.txt');
    Ответ написан
    Комментировать
  • Почему у меня получается объект с неверными ключами?

    Dier_Sergio_Great
    @Dier_Sergio_Great
    Увлеченный человек
    А почему Вы не использовали объект new FormData(form) ?
    https://learn.javascript.ru/formdata
    Ответ написан
    1 комментарий
  • Как вставить картинку по клику?

    Tim-A-2020
    @Tim-A-2020
    Ответ написан
    Комментировать
  • Как найти сумму чисел в двумерном массиве(нахождение суммы массива)?

    Tim-A-2020
    @Tim-A-2020
    let b =[
      [],
      [2, 0],
      [1, 0, 0, 0],
      [1, 1, 1, 1, 1, 1],
      [1, 2]
    ]
    
    b.flat().reduce((acc,item) => acc + item, 0); //12
    Ответ написан
    Комментировать
  • Почему после добавления нового блока слетают события со всех остальных?

    MrDecoy
    @MrDecoy Куратор тега JavaScript
    Верставший фронтендер
    После этого и срабатывает этот блок success. где отрисовывается новый блок.

    document.getElementById('client-personal-note-container').innerHTML += appendNotemakrup;

    Нет, это НЕ добавление нового элемента.
    Это чтение разметки КАК СТРОКИ, добавление к этой СТРОКЕ новой СТРОКИ и потом преобразование под капотом в DOM элементы. Понимаете?

    То есть все элементы что у Вас были - умирают и заменяются НОВЫМИ. Без добавленных на них ранее обработчиков.

    Как исправить?
    Основных пути 2:
    1) Научиться именно добавлять элементы https://learn.javascript.ru/modifying-document
    2) Освоить делигирование событий https://learn.javascript.ru/event-delegation
    Ответ написан
    1 комментарий
  • Почему if/else работает некорректно при получении xhr.response?

    @Bolharskyi Автор вопроса
    Проблема была в том, что значение xhr.response приходило с пробелами. Очистил его в JS методом trim(). Всем спасибо за участие.
    Ответ написан
    Комментировать
  • (Решено) После разгона оперативы по XMP пк перезагружается и виснет. Как исправить?

    sotvm
    @sotvm
    Умный поймёт, а дураку и так всё равно.
    не гнать, это же очевидно
    что ты там собрался выиграть??? )))
    +1-2 кадра, -стабилность всей системы
    это не то железо, которое можно гнать,
    тут "загнали по максималкам"ещё при производстве ))
    Ответ написан
    Комментировать
  • Как убрать ссылку с элемента, если он внутри тега а?

    gtomilin
    @gtomilin
    JavaScript HTML CSS
    1 - Нужно семантически верно сверстать блоки и не будет таких проблем - внутри ссылки не должно быть каких-то интерактивных элементов
    2 - Проверил preventDeafault всё отработало

    63c9bbf8156a9939995020.jpeg
    Ответ написан
    Комментировать