• Как правильно хранить тексты постов в БД?

    Stalker_RED
    @Stalker_RED
    Нормальных подходов всего два - чистить текст перед сохранением в БД или сохранятьть как есть, а чистить перед выводом.
    Оба имеют свои плюсы и минусы. Чаще применяют второй. Иногда чистят и до и после, но чиску до сохранения делают осторожно и нежно. Потому что если найдутся косяки в "чистилке", то второй подход не убьет пользовательские данные.

    Идея с разбивкой на блоки выглядит стремно - нужно или очень жестко ограничивать структуру постов, или вы задолбетесь предусматривать все пользовательские хотелки. По сути вы хотите свой язык разметки изобрести, но не очень понятно зачем.

    ...8-минутная статья в среднем будет содержать 30-40 блоков, в год постится 20тыс. постов, итого за пять лет наберется...
    кеширование, не? Уже скомпилированную статью можно сохранить в готовый файлик или отдельную таблицу, и испорльзовать пока ее не отредакритруют. Но опять-же, зачем вся эта возня со своим языком разметки и компиляцией если можно просто сохранить текст с разметкой?
    Ответ написан
    Комментировать
  • Можно ли найти все варианты слагаемых числа,что бы слагаемых было ровно 20?

    Stalker_RED
    @Stalker_RED
    Можно. Двадцать единичек, и 445.
    Или 20 нулей и 465, под ваше описание задачи вполне подходит.
    Чётче описываете условие.
    Ответ написан
    Комментировать
  • Мониторы выключаются в играх?

    Stalker_RED
    @Stalker_RED
    Возможно провод питания или сигнала монитора плохо вставлен. Я не шучу, встречал такое несколько раз.
    Ответ написан
    3 комментария
  • Как отправить несколько данных и несколько фото одновременно?

    Stalker_RED
    @Stalker_RED
    На mdn есть пример отправки через FormData
    Ответ написан
    Комментировать
  • Как сделать, чтобы при нажатии на объекты button они менялись по отдельности?

    Stalker_RED
    @Stalker_RED
    У вас несколько элементов с id=button. Так делать нельзя, id не должен повторяться. Да и вообще он не нужен.
    https://jsfiddle.net/zqsrgckn/
    Ответ написан
    Комментировать
  • Какие бы дали замечания по коду, где реализовано увеличение картинки при клике изменение масштаба при скролле?

    Stalker_RED
    @Stalker_RED
    Ну, оно работает, это хорошо.

    Что я бы предложил улучшить:
    1. добавить transition для плавности
    2. добавить обработку тача, колесо на мобилки не завезли же.
    Ответ написан
    3 комментария
  • Как с помощью смартфона проверить ширину лазерного реза?

    Stalker_RED
    @Stalker_RED
    Две сотки даже штангенциркулем не получится измерить. Нутромеры микрометрические существуют, конечно, но проще наверное будет найти щупы с нужной точностью.

    В принципе оптически контролировать идея неплохая, особенно если сделать стенд с работой на просвет. Матовая подложка, свет снизу, сверху шаблон с эталонными отверстиями, объектив для макросъемки, а потом снятую уже фотку на компе прогнать через opencv, или что-то самописное, измерить ширину просветов в эталоне и в образце в пикселях, и сравнить на какой процент они отличаются.
    Но нужно будет этой камерой очень близко снимать, и делать много снимков - по краям будут большие искажения.
    Ответ написан
    6 комментариев
  • Нужен ли радиатор для M.2 NVMe в игровом ПК?

    Stalker_RED
    @Stalker_RED
    Для большинства моделей можно найти даташит. Вот к примеру samsung 990 pro в котором пишется, что в среднем рассеивает 5Вт тепла, в пике 5.8, и при полной нагрузке с обдувом ему нормально вплоть до 70 градусов.
    На практике вы и до 45 его редко прогревать будете (при наличие обдува, конечно).

    Мне кажется, радиатор на SSD - дикая перестраховка или "для красоты".
    С другой стороны, чем холоднее - тем больше срок службы.
    С третей стороны - у меня есть порядком устаревший 2.5" samsung 850 evo 240gb, который вот уже почти 10 лет работает без радиатора и без обдува (точнее он напротив фронтальной дыры в корпусе, и какие-то сквозняки мимо него наверное проходят, но это не точно), и по мониторингу с ним все хорошо.

    Корпус, кстати, без единого вентилятора.
    Вентилятор есть только в БП, видеокарте, и башня noctua на процессоре.
    Ответ написан
  • Как сформировать запрос SQL в случае отсутствия значения в таблице базы данных?

    Stalker_RED
    @Stalker_RED
    запрос к бд получается уже некорректным
    что в нем некорректного? Вы запросили данные, их в бд нет, вернулся пустой ответ. Так и должно быть.

    И возможно ваши страдания решаются запросом типа insert ... on duplicate key update ...
    https://dev.mysql.com/doc/refman/8.0/en/insert-on-...
    Ответ написан
    Комментировать
  • Не получается получить данные элемента в расширении Chrome?

    Stalker_RED
    @Stalker_RED
    Вероятно элемент создается скриптом или загружается динамически.
    В расширении код выполняется сразу? Добавьте setTimeout, например.
    Ответ написан
    Комментировать
  • Где лучше хранить переводы в мультиязычном сайте?

    Stalker_RED
    @Stalker_RED
    В ларе есть специальный хелпер для локализации __()
    https://laravel.com/docs/10.x/localization

    Такой-же, кстати, в вордпрессе. Внутрянка немного различается, но применение практически одинаковое.

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

    Stalker_RED
    @Stalker_RED
    const elem = document.querySelector('.box span');
    elem.textContent += ' hello world';
    Ответ написан
    Комментировать
  • Есть ли свободный генератор музыки?

    Stalker_RED
    @Stalker_RED
    Быстрее будет найти готовую, чем сгенерировать.
    Гуглите "royalty free music" или просто "free music", можно с указанием стиля, типа "royalty free japanese background melody" или "no copyright piano music"

    Из выдачи найдите сайт где есть фильтры по длительности, и там уже выберите подходящий трек.

    Ну и мировую классику никто не отменял. Быват копирайт на конкретного исполнителя или оркестр, но в большинстве случаев можно найти и "свободное" исполнение.
    Ответ написан
    Комментировать
  • Как исправить ошибку при переходе на php8 Битрикс [TypeError] Argument #5 ($day) must be of type ?int, string given (0)?

    Stalker_RED
    @Stalker_RED
    Открываем документацию по mktime(), видим, что эта функция принимает только тип int в качестве аргументов. (впрочем, можно и не ходить в документацию, об этом же прямо в тексте ошибки написано).

    Смотрим что в нее передается в коде - три нуля, с ними все хорошо. Дальше какие-то значения из массива $de. Смотрим что там в этом массиве, он создается на пару строк выше:$de = explode(".", $date_end);
    Смотрим документацию по функции explode() (если вы забыли, что это одна из строковых функций), и видим, что она возвращает массив строк. (Ну и да, об этом тоже прямо в тексте ошибки написано, что передана строка).

    Вспоминаем чем отличается строка от числа и как преобразовать одно в другое.

    Было сложно? Нет, не особо. Но таких ошибок в движке битрикса могут быть сотни или тысячи. Вот в чем сложность.
    Ответ написан
  • Вставить значения массива после пробелов?

    Stalker_RED
    @Stalker_RED
    let a=['asd','qwe','zxc','ghj','lkp'],i=0,s=' ',p='112 2123 3123 4123 232'.split(s).map(v=>v+s+a[i++]);
    
    console.log(p.join(s));
    Ответ написан
    Комментировать
  • Где можно найти датасет из точек кривой линии в форме картинки?

    Stalker_RED
    @Stalker_RED
    В вашем примере - векторное изображение.
    Состоит из ломаной линии, дуг, кивых Безье, и т.д.

    Найдитк подобную картинку в формате svg, откройте её в блокноте, и вот оно.
    Формат svg неплохо расписан на mdn.
    https://developer.mozilla.org/ru/docs/Web/SVG
    и в вики примеры есть
    https://ru.wikipedia.org/wiki/SVG

    <svg viewBox="0 0 230 170" width="230" height="170">
      <!-- красный прямоугольник. все просто: его координаты, размер и цвет. -->
      <rect x="25.787" y="24.356" width="86.676" height="70.201" style="fill: red; stroke: black;"/>
      <!-- оранжевая фигура. тоже все просто: М - передвинуть курсор в стартовую точку. L - линия к следующей точке. Z - вернуться к стартовой точке -->
      <path style="fill: orange; stroke: rgb(0, 0, 0);" d="M 180.515 41.547 L 237.821 14.327 L 219.197 58.74 L 258.595 58.023 L 254.297 106.733 L 188.395 92.407 L 151.862 111.748 L 180.515 41.547 Z"/>
      <!--  зеленая фигура - тут все сложнее, множество кривых -->
      <path style="fill: green; stroke: rgb(0, 0, 0);" d="M 48.71 167.622 C 50.051 166.281 51.028 163.24 52.292 162.608 C 57.371 160.068 73.586 162.932 75.931 167.622 C 77.241 170.243 78.035 175.457 80.229 177.651 C 83.99 181.412 92.17 181.949 98.137 181.949 C 112.297 181.949 116.317 171.648 124.641 163.324 C 126.493 161.473 128.677 164.495 128.939 164.757 C 130.374 166.192 133.649 165.733 135.386 168.338 C 138.074 172.37 141.312 183.208 146.131 184.814 C 151.308 186.54 156.094 181.103 159.742 178.367 C 165.987 173.683 170.882 171.204 178.366 171.204 C 177.805 169.522 178.375 166.208 177.65 164.757 C 172.743 154.943 154.156 155.875 146.131 151.863 C 139.792 148.693 129.294 154.13 122.492 151.863 C 107.921 147.006 91.9 141.834 75.931 141.834 C 67.335 141.834 58.739 141.834 50.143 141.834 C 49.192 141.834 42.335 141.046 41.547 141.834 C 39.738 143.643 35.013 144.874 33.667 147.565 C 27.725 159.449 37.784 167.622 48.71 167.622 Z"/>
    </svg>








    Ответ написан
    Комментировать
  • Как построить обмен данными между js и программой на python?

    Stalker_RED
    @Stalker_RED
    Если сай тоже на python, то можно использовать тот-же multiprocessing.

    У вас сейчас есть портиворечия в описании. Вы когда описываете "есть программа которая делает то-то и вот это" вы описывайте конкретнее, что она делает УЖЕ а что вам хотелось бы. А то она одновременно и отдает данные на сайт, и оказывается, что обмена данными с сайтом еще нет, и вообще самого сайта тоже нет. А может и программы никакой нет, только задумка.

    Самые распространенные способы обменяться информацией - по сети (сокеты, REST API, брокеры сообщений и т.д.) или одна программа запускает другую с аргументами, или общая БД.

    Естественно кроме этих способов можно придумать еще множество, включая shared memory.
    Задумайтесь еще над тем, что если однажды устройств станет несколько, а сайт останется один, то возможно стоит сразу делать обмен по сети.
    Ответ написан
    Комментировать
  • Как в переменной типа string использовать неразрывный пробел?

    Stalker_RED
    @Stalker_RED
    &nbsp; или вот он " ".

    Большинство IDE и даже многие редакторы позволяют вставить неразрывный пробел хоткеем.

    Кстати, этих пробелов есть несколько разновидностей https://ru.wikipedia.org/wiki/%D0%9D%D0%B5%D1%80%D...
    Ответ написан
  • Как сделать прямоугольник с закруглеными углами во внутрь?

    Stalker_RED
    @Stalker_RED
    Псевдо-элемент и clip-path
    Ответ написан
    Комментировать