• Как в предварительном запросе передать переменной $ значение полей?

    @rPman
    Да, параметризовать можно только значения но не наименование полей и таблиц (мало того ты и prepared запрос так не сможешь сделать, с каждым новым значением $(column) будет новый запрос).

    Да, тебе придется валидировать значение в $(column) но это не сложно так как там допускаются только латинские буквы (оба регистра), цифры и подчеркивание. Конечно если ты не используешь идентификаторы_в_ковычках (там любые символы, но зачем тебе стрелять себе в ногу), ну в крайнем случае как разработчик ты знаешь что у тебя в запросе и какие допустимые наименования полей там могут быть
    Ответ написан
    1 комментарий
  • Как сделать кнопку для удаление на js или jquery данных из массива localstorage?

    Stalker_RED
    @Stalker_RED
    В localStorage хранится строка.
    Нужно получить эту строку, преобразовать её в JSON, удалить какой-то товар, снова преобразовать в строку и сохранить в localStorage.

    Вы привели кусок кода, который удаляет что-то из data, и записывает в localStorage.
    При этом откуда берётся эта data - непонятно.
    Ответ написан
    3 комментария
  • Почему при изменении объекта он не меняется в массиве?

    Lynn
    @Lynn
    nginx, js, css
    TL;DR: ты путаешь объекты и ссылки на объекты.

    Если придумывать как я люблю разные аналогии, то представим что объект это воздушный шар, а ссылка на объект это канат который привязывает этот шар к земле (или другим шарам).

    Ты создал новый воздушный шар { name:"object" } и привязал его канатом с биркой obj к земле (obj = ...).
    Потом ты привязал ещё один канат с биркой arrq[0] к этому же шару (arrq = [obj]).
    А потом отвязал канат obj (obj = null).
    При этом канат arrq[0] никуда не делся и всё так же привязан к шару.

    Мне эта аналогия нравится ещё тем, что когда ты отвяжешь последний канат связывающий воздушный шар с землёй (например напишешь arrq[0] = null), то он улетит и в конце концов где-то упадёт и пропадёт (сработает сборщик мусора).
    Ответ написан
    Комментировать
  • На каком движке делались ролики к играм PS1?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    На чем получится и что найдут подходящего в рамках бюджета или знаний специалиста в наличии: от типичных макса/майи/блендера до самопала и другой экзотики. В то время для разработки игр для консоли надо было приобрести у производителя консоли набор разработчика, который и использовался для разработки игры под конкретную консоль. А там уже используя SDK стандартный ролик конвертировался в понятный для коносли формат.
    Ответ написан
    7 комментариев
  • Почему стилизация select отличается в браузерах?

    sergey155
    @sergey155
    Стилизация элементов<select> и <option> с помощью CSS в некоторых аспектах ограничена. Это связано с тем, что рендеринг выпадающего списка и его пунктов (<option>) веб-браузерами в значительной степени зависит от нативного операционной системы интерфейса пользователя (OS UI). В результате многие аспекты этих элементов, такие как ширина выпадающего списка, оформление выпадающего списка, и стилизация пунктов списка, могут оказаться сложными для полного контроля с помощью обычных CSS.

    Для стилизации можете воспользоваться например select2
    Ответ написан
    Комментировать
  • Можно ли на vue верстать?

    delphinpro
    @delphinpro
    frontend developer
    Если вам нужна просто верстка, то и требуйте просто верстку.
    Если вы не планируете использовать vue, то и не нужно "на нем верстать". В противном случае это уже не просто верстка, а полноценная разработка фронта (внешний вид + функциональность).
    Иногда имеет смыcл запилить на обычном сайте (не Vue SPA) отдельные интерактивные виджеты на vue/react, ну например, калькулятор какой-то замороченный.
    Ответ написан
    2 комментария
  • Как правильно создать layout страницы с изменяемым состоянием?

    @iljaGolubev
    Не работаю с react, но есть проекты на inertia+vue. Думаю, общий подход от этого не изменится.

    Вы уже используете inertia state (`props.auth.user.name`) - можно использовать и для popup. Props реактивные. Добавьте нужные значения (textPopup,isVisiblePopup,typePopup) в shared-data.
    Изменяете значение на странице с кнопкой - в шаблоне отобразится popup.
    function showPopup можно вынести в отдельный файл и импортировать на нужных страницах. showPopup изменяет prop.popup.textPopup и прочие.

    Плюс подхода - можно с сервера сразу передать нужные значения в попап из контроллера.
    Ответ написан
    2 комментария
  • Успешно! вместо текста?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Кодировка же - у вас исходная utf-8, а выводится как 1251. Смотрите как у вас там и что выводится и какие заголовки.

    UPD: пофиксил очепятку, спасибо @rPman
    Ответ написан
    6 комментариев
  • Почему beforeunload не отправляет запросы в браузере Safari?

    Lynn
    @Lynn
    nginx, js, css
    Посмотрите на Beacon API. Он как раз предназначен для аналитики.
    А обычные запросы браузер имеет полное право обрывать потому что полагает что в нём уже нет никакого смысла раз вы покидаете страницу.

    А ещё в MDN прелагают использовать событие visibilitychange вместо beforeunload.
    https://developer.mozilla.org/en-US/docs/Web/API/N...
    Ответ написан
    1 комментарий
  • Почему в обработчике старый state?

    szQocks
    @szQocks
    происходит перерендер Wrapper, рендерится второй Inner. После этого запускается onUnmount первого Inner, в консоли вижу null,
    - происходит перерендер Wrapper, рендерится второй Inner, в который попадает функция update в котором state равен null, после запускается onUnmount первого Inner и т.д

    демо

    и вообще не советую в функции возврата обновлять какой-то стейт кроме глобального стора который относится ко всему приложению

    если компонент размонтируется, и вызовится функция возврата из useEffect например которая обновляет какой-то там стейт верхнего компонент который там же размонтировывается, а пользователь просто открыл другую страницу в SPA, то будет сбой
    Ответ написан
    Комментировать
  • Как сверстать такую галлерею?

    @Saipy
    Используйте grid вместо flex
    Ответ написан
    Комментировать
  • Как создать программу с готовыми шаблонами для формирования отчётов?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    1. Выбираем язык программирования
    2. Изучаем его
    3. Создаем базу с данными и учимся заполнять и извлекать данные из базы
    4. Пишем программу, которая умеет извлекать данные и выводить отчет
    5. Создаем шаблоны для титульной страницы и остальных страниц, интегрируем в программу

    Ну и все в таком духе.
    Ответ написан
    2 комментария
  • Почему в toLowerCase( ) нельзя вложить что-то на подобие includes(var)?

    delphinpro
    @delphinpro Куратор тега JavaScript
    frontend developer
    Даже не знаю с чего начать...
    Ну начну с определений объектов Number и String (сами почитаете).

    У объектов есть методы, объекты можно вызывать как функции.
    Первый пример
    Number(Math.pow(2, 4));
    Здесь мы имеем два объекта Number и Math. У объекта Math вызывается метод pow, который возвращает некое значение. Это значение передается в качестве параметра в Number, вызываемый как функция для приведения переданного значения к числу.
    То есть Number() ожидает параметр, и мы его туда передаем.

    Второй пример.
    str.toLowerCase().includes(s);
    Здесь вы имеем объект String (строка в переменной str). У этого объекта куча методов, которые можно использовать. Здесь вызывается метод toLowerCase(). Этот метод НЕ принимает никаких параметров (смотрите документацию) и возвращает новый объект String. Затем у этого нового объекта String вызывается еще один метод includes(s)
    Ответ написан
    Комментировать
  • Делят ли файлы в nodeJS?

    Посмотри на nestjs - там вполне opinioated архитектура.
    Правда если понравится nest - не понятно, зачем вообще нода (ибо можно тогда на какой-нибудь из "более взрослых" языков перейти. Типа того же C# + asp net core)
    Ответ написан
  • Какие ограничения есть на ip адреса для SSH?

    SSH никаких особенных ограничений на ip-адреса не накладывает.
    127.0.0.1 - это вполне допустимый адрес, к которому можно подключиться.

    Ну давай по порядку:
    1.
    • 151.248.113.78 - вроде ок
    • 127.0.0.1 - точно мимо, тк локалхост
    • 194.85.283.12 - невалидный адрес. ipv4 - это четыре 8битных числа. 283 не входит в этот диапазон
    • 192.168.15.2 - подозрительно похож на адрес в локальной сети
    • 172.16.0.92 - аналогично
    • 185.76.145.0 - подозрительно похоже на адрес подсети, но пока карандашом
    • 10.55.84.56 - что-то подозреваем

    2. Идём смотреть, какие адреса точно являются локальными
    • 151.248.113.78 - не локальный
    • 192.168.15.2 - Для использования в частных сетях. RFC 1918. Глобальная маршрутизация запрещена
    • 172.16.0.92 - Для использования в частных сетях. RFC 1918. Глобальная маршрутизация запрещена
    • 185.76.145.0 - не локальный
    • 10.55.84.56 - Для использования в частных сетях. RFC 1918. Глобальная маршрутизация запрещена

    Остаются всего два адреса:
    151.248.113.78 и 185.76.145.0
    Причём второй может оказаться невалидным, если подсеть /24
    Ответ написан
    Комментировать
  • Laravel + Inertia. Как настроить формат JSON?

    @AnteFil Автор вопроса
    Для будущих поколений кто будет искать решение этой проблемы. Так и должно быть. И это не ошибка работы )))))
    Ответ написан
    2 комментария
  • Как правильно двигать персонажа в 3д?

    Кажется, что если тебе не подходит addForce, то манипулируй скоростью напрямую.
    Ответ написан
    Комментировать
  • Почему не работает innerHTML?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    я правильно понимаю что вы меняете innerHTML у строки, полученной из innerHTML?
    Ответ написан
    Комментировать
  • Нужно ли снова устанавливать Node.js для каждого нового проекта?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    Смотрите нода бывает разных версий, так что рекомендуется использовать селектор
    https://npm.github.io/installation-setup-docs/inst...

    а так делайте следующее
    https://docs.npmjs.com/cli/v10/commands/npm-init

    инициализируете пакет ,переходите в папку и начинаете работать.

    Почему важно?
    Нод куча версий и все они не совсем или совсем не совместимы. Поэтому нужно выбирать нужную версию
    Ответ написан
    Комментировать