Задать вопрос
  • Как отрисовать страницу при асинхронном POST запросе?

    @alexalexes
    Если у вас строго режим одностраничного сайта, то да, сами перелицовываете body в любой непонятной ситуации (на самом деле для такой модели подбирают подходящий клиентский фреймворк. сами вы вряд ли охватите все обработчики событий, чтобы не заботится об реактивности блоков всей страницы). При этом нужно не забывать вести url history, чтобы адрес страницы фиктивно изменялся, следуя логике посещения виртуально нарисованных разделов сайта.
    Или же у вас не строго одностраничный сайт, то...
    Если у вас только некоторые контейнеры на странице обновляют сведения по ajax, то на какие-то действия нужно вызывать перезагрузку страницы, изменяя windows.location.href / windows.location.reload.
    Ответ написан
    Комментировать
  • Как сделать динамичное извлечение из JSON?

    @alexalexes
    Перевести в массив объект -> если есть элементы, то ... отмапать элементы с нужным дополнением li -> объединить массив с пустым разделителем.
    `<div class="store__text">` + (Object.entries(item.desc[0]).length > 0 ? `<ul>` +Object.entries(item.desc[0]).map((desc_item) => `<li>` + desc_item[1] + `</li>`).join(``) + `</ul>` : ``)
          + `</div>`
    Ответ написан
    3 комментария
  • Как добавить файл в BLOB на sqlite(python)?

    @alexalexes
    Я, конечно, дилетант в Python, но могу сказать точно, что blob нужен в СУБД, чтобы можно было сохранять бинарное содержимое файла как есть.
    То есть подключались к файлу в бинарном режиме. Потом читаете поток файла как есть, без этого преобразования:
    hex_file = binascii.hexlify(bin_file)
    А сразу использовать bin_file как входной параметр запроса.
    Кроме того, можно обнаружить, что использование bin_file в качестве временного хранения содержимого файла в оперативной памяти phy-сервера - это опять нецелевое использование возможности блоб.
    Я специально не буду гуглить phy-функцию, но такая точно есть, которая открывает дисковый файл и тут же привязывает дескриптор файла к параметру запроса (bind), не считывая тело файла. При запуске выполнения запроса, файл самостоятельно средствами среды отправляется в базу, не нагружая серьезно оперативную память.
    Такую же функцию можно найти для выборки данных сразу в файл.
    Это позволяет ворочить гигабайтовыми файлами, используя считанные мегабайты оперативной памяти сервера, при выполнении phy-скриптов.
    Ответ написан
    Комментировать
  • Можно заменить жидкие термо прокладки на обычные?

    @alexalexes
    Принял решение обслужить сам, заказал жидкий металл от термал гризли

    Прямой путь нарваться на ремонт всего и вся ввиду короткого замыкания, в следствие проникновения капелек жидкого металла под чипы, которые были им обслужены. Новичок не сможет грамотно обслужить этим интерфейсом технику, а профессионал не будет его использовать там, где отродясь его не было.
    В вашей ситуации, проще купить бу ноут по объявлениям, и на нем работать, пока к вам придет правильный ремкомплект, а потом его продать, когда почините основной ноут. Меньше денег потеряете.
    Видео по теме:
    https://youtu.be/Bi6hxoIVeVc?t=69
    Ответ написан
    Комментировать
  • Как в HTML без CSS сделать тултип с картинкой?

    @alexalexes
    А что вам мешает css инлайн стилем добавить? Можно даже картинку в base64 перевести и туда же интегрировать, чтобы не обращаться ни к каким сторонним ресурсам.
    Ответ написан
  • Сделать валидацию формы это задача для джуна или мидла?

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

    @alexalexes
    Думаю что первым делом, происходит подсчетом суммы общей заполненности данных по полям групп, потом это число делится на количество записей

    Нет, методы оценок чего-либо не всегда сводятся к вычислению математического ожидания.
    У каждого города может быть выведен регрессионный показатель:
    y = t1*x1 + t2*x2 + ... + tn*xn
    x-ы - допустим, значения рейтингов в группах.
    t-ы - допустим, веса эти гр. рейтингов (влияние на общий показатель).
    Коэф. t может оказывать и нелинейное влияние. Ничего не мешает провести его через логарифм, с близким к экспоненте показателем (чтобы чуть-чуть отличаться от линейности). Может даже на отдельных значениях срабатывать пороговый триггер (например, если входное t > 0.8, то считаем, что оно 1.0).

    X-ы могут быть нормированы к интервалу 0...1. Также могут применятся хитрости с нелинейностью и триггерами.

    Y - тоже можно нормировать по тем же правилам.
    Чтобы на первое место вылезло больше кандидатов с рейтингом больше 0.99 - подкрутите логарифм.
    Ответ написан
    Комментировать
  • Как выбрать значения из БД по JSON?

    @alexalexes
    Если СУБД поддерживает тип данных JSON, а вы хотите сравнивать JSON тело как строку, то приведите содержимое из JSON в строку.
    SELECT * FROM tavle
     WHERE JSON_EXTRACT(json, '$') = jsons; -- атрибут json относится к таблице tavle, а jsons - плейсхолдер, куда вы подставляете строку, по которой будете искать тело?
    -- JSON_EXTRACT(атрибут_типа_JSON, '$') - это выражение конвертирует JSON в строку, аналогично как в JS будет JSON.stringify(объект_с_данными).
    Ответ написан
    2 комментария
  • Нужно ли расширение html в url адресе?

    @alexalexes
    Это норма. Нет никаких требований, чтобы url обязательно повторял какие-то части пути к реальным файлам на сервере.
    Часть url, который отвечает за некий путь, - это всего лишь набор параметров. Как их интерпретировать - решается на уровне конфигурации apache/nginx, или непосредственно в скрипте CMS (роутинг).
    Ответ написан
    Комментировать
  • Как исправить кракозябры вместо кириллических символов?

    @alexalexes
    Посмотрите в отладчике браузера (вкладка Сеть), какие заголовки возвращаются с ответом сервера.
    Если там заголовок с кодировкой отличен от utf-8, то сервер по умолчанию ее не использует.
    Либо нужно php.ini исправлять, либо в скрипте отдавать нужный заголовок:
    header('Content-Type: text/html; charset=utf-8');
    То, что вы в HTML указали:
    <meta charset="utf-8">
    Не дает никаких указаний серверу, в какой кодировке отдавать ответ.
    Ответ написан
    Комментировать
  • Как разрешить прямой доступ к определенным папкам?

    @alexalexes
    Либо директиву ИЛИ применяете:
    RewriteCond %{REQUEST_URI} !^/assets/ [OR]
    RewriteCond %{REQUEST_URI} !^/css/ [OR]
    RewriteCond %{REQUEST_URI} !^/js/ [OR]
    RewriteCond %{REQUEST_URI} !^/index.php
    RewriteRule ^(.*)$ index.php?route=$1 [L, QSA]

    Либо как-то закидываете в одну регулярку, где есть что-то общее с незначительной альтернативой:
    RewriteCond %{REQUEST_URI} !^/(assets|css|js)/ [OR]
    RewriteCond %{REQUEST_URI} !^/index.php
    RewriteRule ^(.*)$ index.php?route=$1 [L, QSA]
    Ответ написан
    Комментировать
  • Хорошее ли решение разделение таблиц юзер и роли?

    @alexalexes
    Вы выделили в системе два класса сущностей. Одна - Пользователь, вторая - Роль.
    Под каждый класс нужна отдельная таблица.
    Как определить какие взаимоотношения между этими классами?
    Нужно примерить следующие коммутативные гипотезы:
    Первая пара гипотез:
    "Один пользователь должен (может) иметь только одну роль."
    "Одна роль должна (может) быть назначена многим пользователям."
    Вторая пара гипотез:
    "Один пользователь должен (может) иметь несколько ролей."
    "Одна роль должна (может) быть назначена многим пользователям."
    Если в вашей архитектуре системы справедлива первая пара гипотез, то вы строите взаимоотношение между классами Роль и Пользователь как "один ко многим". Это значит, что у таблицы Пользователь будет внешний ключ в виде идентификатора роли, тем самым вы каждому пользователю сможете назначить только одну роль. Но сами роли могут повторятся у разных пользователей.
    Если в вашей архитектуре системы справедлива вторая пара гипотез, то вы строите взаимоотношение между классами Роль и Пользователь как "многим ко многим". Для этого нужно создать промежуточную таблицу, например Пользователь_и_роль, в которой будут два внешних ключа - идентификатор пользователя и идентификатор роли пользователя (можно, но технически нужно еще создать еще идентификатор первичного ключа, чтобы можно было корректно обращаться к записям этой таблицы, не путая их). В этом случае каждому пользователю можно выделить целый набор ролей, не ограничиваясь одной ролью.
    Ответ написан
    Комментировать
  • Как понять сгорела ли звуковая карта или что с ней не так?

    @alexalexes
    Запустить AIDA64 и посмотреть, что есть в разделе устройств Мультимедиа -> Аудио PCI / PnP. Если вы аппаратно звуковую карту никак не отключали, значит она неисправна совсем, и в этом разделе вы ее не увидите. Если там есть альтернативное устройство от материнской платы, значит, что-то с драйверами в операционной системе.
    Ответ написан
  • Как правильно верстать используя bootstrap?

    @alexalexes
    При использовании bootstrap вы не можете мыслить фиксированными шириной.
    У вас есть 12 колонок - 12 долей единиц ширины экрана, и есть с полдюжины разных размеров экранов.
    Самый маленький, малый, средний, большой и очень большой.
    И логика расстановки классов такая:
    "На большом экране и больше у меня слайдер будет шириной 6 из 12 колонок,
    на среднем 8 из 12 колонок,
    от малого и меньше 12 из 12 колонок".
    С этой логикой и навешиваете нужный набор классов на контейнер слайдера.
    JS код не должен фиксировать размер контейнера в пикселях, нужно ему позволить расширяться по bootstrap сетке.
    Ответ написан
    Комментировать
  • Как перезагрузить удаленно Windows 11?

    @alexalexes
    На каждом компе держать CD/DVD дисковод подключенным, даже если он давно не читает диски.
    Один дисковод одного системника нужно расположить так, чтобы его лоток мог воздействовать на кнопку перезагрузки другого системника. Если одна система зависает, то нужно подключиться к другой системе и вызвать 2 команды извлечения диска из дисковода (одна на открытие лотка, другая - на закрытие) и подождать, когда вторая система перезагрузится.
    Ответ написан
    2 комментария
  • Как отследить когда программа делает и пересылает скриншот экрана?

    @alexalexes
    Сменить работу. Если откроется факт противодействия существующим инструментам контроля, то наказание будет намного суровее, вплоть до того, что заставят делать селфи, когда отлучитесь в туалет.
    Ответ написан
    2 комментария
  • Нормально ли предоставлять скан паспорта при трудоустройстве?

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

    @alexalexes
    Возможно, если сама СУБД будет давать необходимый API для веб клиентов (который не будет работать из коробки, нужны определенные действия по настройке со стороны администратора СУБД).
    Яркий пример - Oracle REST Data Services.
    Но не каждый производитель СУБД заморачивается над разработкой подобных сервисов. Главное, чтобы самые популярные среды разработки серверных приложений имели необходимое расширение или драйвер, чтобы подключаться к СУБД на стороне сервера. Остальное - головная боль прикладных разработчиков.
    Ответ написан
    Комментировать
  • Почему куллер не охлаждает ЦП мгновенно?

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

    @alexalexes
    .header-dropdown-item {
    ...
      height: 4rem;
    ...

    .header-dropdown-item:hover {
    ...
      height: fit-content;
    ...

    Эти значения высот в вычисленном состоянии имеют разный результат в пиксельном выражении?
    Как вы думаете?
    Ответ написан
    Комментировать