Задать вопрос
  • Как автоматически скрывать определенную строчку кода сайта?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    В вашем случае это называется просто "удалить элемент". Это умеет любой блокировщик рекламы типа uBlock Origin, AdBlock и прочие. Там есть специальный инструмент "пипетка" - им выбираешь элемент и далее удалением этого элемента будет заниматься уже сам блокировщик полностью автоматически. Кроме того, можно вручную указать селектор нужного элемента.
    Ответ написан
    3 комментария
  • Как правильно перенести изменения с тестового сайта битрикса на боевой?

    Я предполагаю что мы делаем бэкап на тестовом сайте и переносим его на боевой и там уже восстанавливаем, прав ли я, если нет то подскажите как сделать это?

    Зависит от сайта и изменений.
    • Изменения только в коде и в базе ни чего не изменялось? Тогда вообще стоило бы их через git накатывать.
    • Изменения как в коде так и в базе:
      • Если на сайте не было за это время изменений, то может прокатить развёртывание бекапа.
      • Если же сайт активно использовался: создавались заказы, редактировались товары, сделки в Б24 и т.д, то такой вариант не уместен так как будет потеря данных. В таких случаях нужно использовать миграции. Есть много разных вариантов написания миграций, но общая суть в том, что изменения в БД фиксируются в виде скриптов, которые выполняются в момент деплоя. Один из способов управлять миграциями- это модуль sprint.migration.



    Ответ написан
    Комментировать
  • Как заставить скрипт tampermonkey работать?

    Alexandroppolus
    @Alexandroppolus
    кодир
    Судя по всему, элементы не присутствуют в html изначально, а добавляются (создаются скриптом) по факту загрузки некоторых данных. Это обычная ситуация в современном web. Тебе надо дождаться их появления - например, попробовать через MutationObserver, или, например, поставить setInterval и в нем проверять наличие элементов (как только появятся - отменять таймер)
    Ответ написан
    Комментировать
  • Как интегрировать на свой сайт окно из Chrome для входа на сайт?

    @Everything_is_bad
    Про хром ты заблуждаешься, другие браузеры это тоже поддерживают, гугли "google one tap"
    Ответ написан
    Комментировать
  • Какую букву в игре поле чудес в этом случае лучше всего открыть?

    @WaterSmith
    Android-разработчик. Java, Kotlin
    В данном случае, со словами
    слева
    слово
    слова
    Если открыть букву "о" (которая есть в 2х словах из трех) то станет 100% известно, какое слово из трех загадано, потому что появиться четкий патерн: ни одной буквы - 1, две - 2, одна - 3. А если букву "а" - которая тоже присутствует в 2х словах из трех, то результат будет хуже. Остается неоднозначность для вариантов 1 и 3.
    Отсюда напрашивается алгоритм: Иметь в памяти словарь из потенциально подходящих слов. Анализировать, сколько уникальных патернов даст какая буква. Выбирать ту, котороая дает больше в уникальных патернов. При нализе патернов на уникальность естетсвенно нужно учитывать не только количество открытых букв, но и их позиции.
    В данном случае: 1, 2 и 4 буква - один уникальный патерн на все три слова
    3 буква - 3 уникальных патерна, 5 буква - два уникальных патерна. Значит нужно открыть третью букву.
    Ответ написан
    4 комментария
  • Как решить проблему с загрузкой BIOS?

    @elderl
    почему же не работает (не грузится) БИОС
    Потому что вход выключен.
    Samsung NP530 laptop cannot enter BIOS setup
    Другой способ войти в BIOS — удерживать клавишу Shift и нажать «Перезагрузка» -> «Устранение неполадок» -> «Дополнительные параметры» -> «Параметры встроенного ПО UEFI» -> «Перезагрузка». Когда вы войдете в BIOS, перейдите в «Дополнительные параметры», отключите быстрый режим BIOS, затем перейдите в «Загрузка», отключите безопасную загрузку, и у вас появится выбор режима ОС, где вы можете выбрать CSM OS.
    Ответ написан
    3 комментария
  • В чем смысл public _ {get;set} в c#?

    Потому что так исторически сложилось.
    1. Очень многие механизмы раньше (а какие-то и сейчас) работают только со свойствами, но не с полями.
    А если они и умеют работать с полями - часто по-умолчанию они с полями не работают.
    (Это относится ко всяким сериализаторам, ORM, и другим штукам, которые работают с объектами через рефлексию, создают прокси)

    2. Даже если ты делаешь автосвойство - ты всё равно можешь делать с ним всё то же самое, что и с обычным свойством: вынести его в интерфейс, сделать виртуальным и переопределить в наследниках, а потом обратиться к нему не на конкретном типе, а на интерфейсе. Это может быть очень полезно, а иногда и необходимо в некоторых случаях

    3. Если ты разрабатываешь какую-то библиотеку, которую будет использовать кто-то ещё, то ты скорее всего хочешь как можно меньше ломающих изменений в новых версиях - тогда имеет смысл превентивно сделать свойство, чтобы потом не переделывать.

    По сути всё.
    Сказки про инкапсуляцию оставим для учебников, так как если мы делаем какую-то тупую DTO-шку, то никакой пользы от обращения через свойства мы не получим.

    Накладных расходов у свойств по сути нет, так как JIT их заинлайнит.
    А раз никаких минусов нет - зачем включать мозг и думать "а понадобится ли мне по какой-то причине тут свойство или можно обойтись полем"? А потом ещё огребать, если ошибся (даже если это редкий случай)
    Единообразие тут скорее благо.

    Те же рекорды (record, record struct) вообще не позволяют тебе объявить поля и при этом скрывают многословность свойств.

    к примеру, не сделать этот int отрицательным

    На самом деле это очень редкий кейс.
    Зачем делать какую-то валидацию, если можно изначально использовать тип, который не допускает отрицательных значений?

    но вот смысл автоматических свойств я так и не могу осознать, хоть убейте

    Смысл автосвойств - чтобы не писать руками { get {return x;} set {x = value;}}.
    А смысл свойств вообще - чтобы можно было вынести в интерфейс, переопределить, итд.

    А ещё у свойства я могу не писать set или вместо set написать init и required, чего я не смогу сделать в классе с полями.
    Да, у поля можно написать readonly и получить по сути то же самое, но тогда его надо будет обязательно через конструктор инициализировать.
    Ответ написан
    3 комментария
  • Почему кука обрезается на 330 символов?

    @artem-dainov
    Php, java, js. Boot spring, jquery, git
    Такое лучше не делать.
    Я так понимаю вы хотите сохранить корзину. Но при проектирование магазинов такое нельзя делать.
    Это не лучший вариант. Куку можно отредактировать и тд.
    Обычно для этого создаётся связующая таблица и выглядит всё примерно так.
    1. Пользователь пришел на сайт. Выдали ему уникальный номер. Для уникальных номеров кто что использует. Но я обычно создаю отдельную таблицу.
    2. Создаётся связующая таблица между объектом товара и пользователем. В нее помещается id объекта товара, id пользователя и прочая информация, типа цена, скидка, количество.
    3. Всё. Далее, где вам нужно получить эту информацию, получайте уникальный номер пользователя, который вы в куках сохранили, и подтягивайте её.
    Ну а что по самой куки, то тут есть ограничения на 4 килобайта информации. Но вы должны учитывать, что в эти 4кб входит не только содержимое, но и настройки самой куки.
    Да и каждый браузер может вести себя по разному.
    Ответ написан
    Комментировать
  • Как обрабатывать события браузера на смартфоне/планшете?

    @Leonardeschi
    Потому что на смартфоне не может быть чисто логически события mouseover. Тут только ставить обработчик события click на какой-нибудь элемент. Есть еще события касания, с помощью которых можно имплементировать свайп (но в вашем случае это навряд ли нужно), здесь подробнее написано.
    Ответ написан
    Комментировать
  • Отправка промта с сайта в телеграм бота, генерация картинок, как реализовать?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    ботфазер ни в какой бот ничего не передает. ботфазер это бот телеграмма для управления твоими ботами (аккаунтами для ботов), а не для взаимодействия с ними или отправки им сообщений.
    Ответ написан
    3 комментария
  • Как перебрать на совпадение все свойства объекта из LocalStorage и вывести в массив по три элемента?

    alexey-m-ukolov
    @alexey-m-ukolov Куратор тега JavaScript
    1. Сортируете свой массив по городу.
    2. Заводите новый массив, двумерный, в который будете складывать записи.
    3. Итерируете по своему отсортированному массиву и смотрите, не поменялся ли город и не стало ли записей три. Если нет, то добавляете запись в последний подмассив двумерного, если да, то добавляете в двумерный новый массив и кладёте запись в него.
    4. Выводите получившийся двумерный массив куда надо.

    Для простоты на третьем шаге можно завести три переменных: предыдущий город, количество элементов в последнем массиве и индекс последнего массива в двумерном. Можно обойтись и без них, но лучше сначала сделать наглядно, раз у вас с алгоритмом пока проблема.
    Ответ написан
    2 комментария
  • Почему SOP не блокирует запросы с разных источников, позволяя воспроизвести CSRF?

    vabka
    @vabka Куратор тега Веб-разработка
    CORS умеет блокировать не только ответы, но и запросы, но только в случае "сложных" запросов.
    (Например POST с Content-Type: application/json будет сложным)
    А банк от csrf-уязвимостей должен защититься при помощи csrf-токенов.

    https://habr.com/ru/companies/macloud/articles/553826/
    Ответ написан
    2 комментария
  • Почему PHP считает int числа после математических операций как float?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Так как в выражении одним из операндов присутствует деление, результатом которого будет число с десятичной частью, естественно все дальнейшие действия будут переводить операнды в совместимый формат - с плавающей запятой. Читать про неявные преобразования в языках со слабой типизацией.
    Ответ написан
    Комментировать
  • Как можно во flex сетке закрасить отступы gap?

    @AnKu_11
    grid на flex поменяй, но суть та же

    Ответ написан
  • Почему не работают регулярные выражения в AjaxForm?

    DanArst
    @DanArst
    Гриффиндор в моде при любой погоде!
    Напиши хук и проверяй там. Тем более раз ты уверен, что у тебя не бот, а человек спамит. То возвращай ему сообщение, что форма отправилась, но на деле завершай выполнение скрипта;
    <?php
    $phone = preg_replace('/[\s\-\(\)]/', '', $hook->getValue('phone'));
    
    if (preg_match('/^\+7[9483]\d{9}$/', $phone )) {
        return true;
    } else {
        echo $AjaxForm->success('Ваше сообщение отправлено');
        die();
    }
    Ответ написан
    Комментировать
  • В чем суть задачи?

    @AUser0
    Чем больше знаю, тем лучше понимаю, как мало знаю.
    Так примеры же есть, и в них кристально чисто видно, что нужно вернуть true, если объект или массив не пусты, имеют хоть одно значение в себе. Пример 2, пусто = true.
    Ответ написан
    3 комментария
  • Как добавить русский текст в fpdf?

    Adamos
    @Adamos
    FPDF официально не поддерживает Unicode.
    Выкиньте ее и забудьте, просто используйте mPDF.
    Ответ написан
    9 комментариев
  • Корректно ли в данном случае отправляется запрос в базу данных?

    Есть сомнения по поводу корректности схемы, правил валидаций, названий полей но их нет смысла озвучивать, если нет описания решаемой задачи.

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

    В остальном выглядит ок.
    Ответ написан
    2 комментария
  • Как устранить ошибку Cannot set properties of null (setting 'innerHTML') в JS&?

    VoidVolker
    @VoidVolker Куратор тега JavaScript
    Dark side eye. А у нас печеньки! А у вас?
    RTFM: Document -> document.getElementById()
    ссылка на объект типа Element соответствующий указанному ID или null, если элемент с указанным ID не найден в документе.
    Ответ написан
    Комментировать
  • Как исключить первую запись в базе данных?

    Melkij
    @Melkij
    DBA для вашего PostgreSQL?
    offset 1 при небольших значениях offset самое адекватное

    PS: mysql_query? перепроверил какой нынче год в календаре
    Ответ написан
    1 комментарий