• ИИ - хороший помошник в обучении?

    ИИ — приемлемый помощник в работе опытного программиста, позволяющий немного снизить количество рутины.
    Начинающим же генераторы текста противопоказаны, так как их использование помешает формированию необходимых в реальной работе навыков.
    Ответ написан
    2 комментария
  • В чем ошибка SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens?

    ipatiev
    @ipatiev Куратор тега PHP
    Потомок старинного рода Ипатьевых-Колотитьевых
    Дополню предыдущий ответ правильным кодом, без вот этих всех бессмысленных телодвижений, которые понатыканы в исходном вопросе.
    $query = "UPDATE `users` SET `address`= ?,`phone_number`=?  WHERE email=?";
    $params = [
        $address,
        $phone_number,
        $email,
    ];
    $stmt = $pdo->prepare($query);
    $stmt->execute($params);

    Только орфографические ошибки в именах полей поправил
    Ответ написан
    Комментировать
  • В чем ошибка SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    1) $params собственно нужен для биндинга, чтобы не вставлять данные прямо в запрос, так как это чревато инъекциями. По этому дебильный совет "просто поменяй на $stmt->execute();" желательно проигнорировать.

    2) Вместо переменных нужно вставить плейсхолдеры, именованные или безымянные не особо важно. Естественно количество плейсхолдеров должно совпадать с количеством элементов в массиве.

    3) Даже в таком виде как у вас запрос работать не будет, так как строковые переменные в рамках запроса должны быть в кавычках.

    4) WHERE $email что? Вы вообще понимаете что и для чего пишете? Просто переведя на русский "где емэйл" не кажется вам слегка странной конструкцией? Просто загляните в документацию SQL где описывается WHERE.
    Ответ написан
    Комментировать
  • Как устроена команда git push?

    vhood
    @vhood
    Не забывайте отмечать решения
    Как устроена команда git push?
    вот так

    Можете дать подобное описание для git push?
    А что не так с описанием?

    git push отправляет данные в удаленный репозиторий...
    Ответ написан
    Комментировать
  • Как исправить ошибку при установке Open JDK 17 Java на Ubuntu 22?

    @pfg21
    ex-турист
    на там же писано впрямую что не так.
    Temporary failure resolving 'archive.ubuntu.com'
    Не возможно преобразовать имя archive.ubuntu.com в ip-адрес.
    dns отвалился.
    Ответ написан
    3 комментария
  • Как пробросить порты ч-з несколько сетевых интерфейсов на Ubuntu?

    Bermut
    @Bermut
    Жертва домашней лаборатории
    Это решается таблицами маршрутизации, маркировкой соединений через mangle правила, если кратко, то должно выглядить как-то так:
    ip ru a table 1 fwmark 1
    ip r a default via <1 ips gw> t 1
    ip ru a table 2 fwmark 2
    ip r a default via <2 ips gw> t 2
    iptables -t mangle -I PREROUTING -m conntrack --ctstate NEW -i <eth ips 1> -j CONNMARK --set-xmark 1
    iptables -t mangle -I PREROUTING -m conntrack --ctstate NEW -i <eth ips 2> -j CONNMARK --set-xmark 2
    iptables -t mangle -A PREROUTING -m connmark --mark 1 -j MARK --set-mark 1
    iptables -t mangle -A PREROUTING -m connmark --mark 2 -j MARK --set-mark 2
    Ответ написан
    3 комментария
  • Connection refused при попытке соединить spring-сервис и postgresSQL db в докере. Почему?

    @D3lphi
    При обращение к хосту контейнера нужно использовать не внешний порт, а внутренний: db1:5432
    Ответ написан
    Комментировать
  • Имитация веб-камеры - как автоматизировать на python (linux)?

    Vindicar
    @Vindicar
    RTFM!
    Извини, а у тебя ничего не ёкнуло вот тут?
    sudo apt install v4l2loopback
    pip install v4l2loopback
    Ты понимаешь разницу между этими двумя командами?
    Первая - задействует системный менеджер пакетов для дистрибутивов на базе debian (deb-пакетов).
    Вторая - задействует встроенный менеджер пакетов питона.
    Это совершенно разные вещи, и они работают с совершенно разными репозиториями.
    Установить deb-пакет в систему, на которой будешь тестить, достаточно будет один раз.
    Прописать мод можно в /etc/modules, но можно и тупо делать modprobe при загрузке системы.
    И то и то, я полагаю, можно сделать хоть на живой системе, хоть внутри докера.

    После этого в автотесте запускаешь ffmpeg, можно даже тупо через subprocess вместо питоновских модулей. Сюрприз, сюрприз! Они все, насколько я знаю, именно так и делают под капотом. Я не видел модуля, который бы имел интегрированный ffmpeg.
    Ответ написан
    3 комментария
  • Скрипт на bash для мониторинга таблицы из Postgresql?

    Melkij
    @Melkij
    PostgreSQL DBA
    Не имеет отношения к postgresql. Чисто bash

    DB_NAME = foo - это команда
    DB_NAME=foo - это переменная
    Ответ написан
    Комментировать
  • Как лучше устраиваться, по ИП или ТК РФ?

    CityCat4
    @CityCat4
    //COPY01 EXEC PGM=IEBGENER
    Конечно же по ТК :) Потому что только при устройстве по ТК есть "работник" и "работодатель". При работе с ИП ничего такого нет, есть просто контрагент. Другая модель отношений, понимаете? В отношении работника у работодателя куча ( да нет, даже КУЧА) обязанностней - от оплаты отпуска до проблем с травматизмом (не говоря уже про беременность и декрет), в отношении ИП - ничего такого нет :)

    Отношения с ИП очень простые - договор на поставку товаров или оказание услуг и соответствующие закрывающие документы.

    ВСЕ.

    Как ИП ведет свой бизнес - пофиг. Причем оплата товаров/услуг регламентируется совершенно другими законами, нежели выплата зп работнику :) Работать с ИП очень выгодно работодателю, но крайне не выгодно работнику (который ИП).
    Легко уволить, не выплатив даже увольнительные, легко уволить также со стажировки?

    Нет такого понятия. ИП не "принимают на работу" поэтому его нельзя "уволить". С ИП заключают договор. Который да, можно расторгнутьв любое время. Да, там могут быть санкции за досрочное расторжение - ну тут уж как пропишете. Договор - Ваш единственный правоустанавливающий документ.
    Ответ написан
    Комментировать
  • Потеря связи в боте telebot, в чем могут быть проблемы?

    @Everything_is_bad
    но когда перевел бота на домашний сервер
    это одна из возможных причин, качество обычной техники и домашнего интернета очень плохое.

    remote end closed connection without response
    а это вторая, причиной этого может быть превышение лимита запросов на сторонний сервис, а может просто проблемы с сетью, как следствие первой причины

    Надо делать правильно, нормальный хостинг и webhook.
    Ответ написан
    Комментировать
  • Как настроить авторизацию в telegram боте?

    trapwalker
    @trapwalker Куратор тега Python
    Программист, энтузиаст
    Идея? Есть отличная оригинальная идея - немножко подучиться программировать на выбранном вами языке. Не искать карьеру разработчика ботов беззнания программирования, а именно подучить язык и основы алгоритмизации.
    А задача ваша решается просто. Начать надо с декомпозиции.
    При запуске бота вам нужно открыть этот текстовый файл и загрузить его контент в структуру, и, если не получилось, то создать пустую структуру.
    Если пользователь, нажавший у бота кнопку старт не найден в этой структуре, то бот должен запустить сценарий регистрации. Что вы под этим понимаете? Вопросы какие-то задать пользователю и сохранить ответы?
    При окончании регистрации нужно сохранить структуру в файл.

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

    После этого у вас вот эти вот вопросы отпадут все.
    Ответ написан
    Комментировать
  • Как инициализировать переменную раньше функции в Python?

    Maksim_64
    @Maksim_64
    Data Analyst
    Что то ты с кодом ты напутал. Список может быть изменен из функции. Внутри функции python работает следующим образом.
    1. Первым делом python смотрит есть ли ключевое слово global

    2. Вторым есть ли ключевое слово nonlocal

    3. Третьим в параметрах, если там имя есть то переменная становится локальной.

    4. Если переменная упоминалась (но не было определена) то python смотрит на нелокальную область видимости.

    5. Если переменная упоминалась (но не было определена) и не найдено в нелокальной области видимости то смотрит в модуле

    6. Если и там не нашел то в встроенных пример max,min и т.д.

    a = 1
    b = 2
    c = 3
    
    def func():
        print(a,b,c)
    
    if __name__ == "__main__":
        func()
    Работает, как ожидается, а теперь маленькое изменение
    a = 1
    b = 2
    c = 3
    
    def func():
        print(a,b,c)
        c = 100
        print(c)
    
    if __name__ == "__main__":
        func()
    И все ошибка даже print(a,b,c) не выполнится. Потому что с находится в локальной области видимости функции python ее находит и также он находит ее упоминание (print(a,b,c)) до ее определения.

    def func():
        global c
        print(a,b,c)
        c = 100
        print(c)
    
    if __name__ == "__main__":
        func()


    Вся это проблема актуальна только для НЕ мутабельных типов например
    a = [0]
    b = [0]
    c = [0]
    
    def func():
        print(a,b,c)
        c.append(100) 
        print(c)
    
    if __name__ == "__main__":
        func()

    Все работает как и ожидается. Ну и пару слов об использовании global. Я персонально не сторонник утверждения никогда не используй global Но безусловно данная конструкция актуальна для не локальной области видимости то есть вот так.
    def func():
        total = 0
        def inner():
            nonlocal total
            total +=1
            return total
        return inner
    
    
    if __name__ == "__main__":
        add = func()
        print(add())
        print(add())
        print(add())
    Если убрать ключевое слово nonlocal то мы получим ошибку.
    Ответ написан
    Комментировать
  • Как правильно организовать репозитории?

    @vitaly_il1
    DevOps Consulting
    Я не программист, а DevOps, использую репо/организацию заказчика.
    Честно говоря, не понимаю, как/зачем использовать свой аккаунт - как тогда передавать код заказчику?
    Ответ написан
    4 комментария
  • В чем проблема плагинов "раскрашивания" скобок для IDE?

    @Everything_is_bad
    Нет никакой проблемы, и не нужно из чисто субъективной вещи, пытаться ее придумывать, кому-то нравится, кому-то нет, вот и всё.
    Ответ написан
    Комментировать
  • Можно ли использовать кириллицу в Active Directory?

    @Drno
    лучше всегда и везде в таких местах использовать латиницу. кто его знает что сломают в следующем обновлении)
    Ответ написан
    Комментировать
  • Почему Kubuntu и другие дистрибутивы называет стоковые папки кириллицей?

    hint000
    @hint000
    у админа три руки
    Это не папки, а сивольные ссылки на папки. Сами папки латиницей. Desktop, Documents, Downloads, Music, Pictures, Videos.
    $ cat ~/.config/user-dirs.dirs
    # This file is written by xdg-user-dirs-update
    # If you want to change or add directories, just edit the line you're
    # interested in. All local changes will be retained on the next run.
    # Format is XDG_xxx_DIR="$HOME/yyy", where yyy is a shell-escaped
    # homedir-relative path, or XDG_xxx_DIR="/yyy", where /yyy is an
    # absolute path. No other format is supported.
    # 
    XDG_DESKTOP_DIR="$HOME/Desktop"
    XDG_DOWNLOAD_DIR="$HOME/Downloads"
    XDG_TEMPLATES_DIR="$HOME/Templates"
    XDG_PUBLICSHARE_DIR="$HOME/Public"
    XDG_DOCUMENTS_DIR="$HOME/Documents"
    XDG_MUSIC_DIR="$HOME/Music"
    XDG_PICTURES_DIR="$HOME/Pictures"
    XDG_VIDEOS_DIR="$HOME/Videos"

    Откуда это всё?:
    Есть такой стандарт.
    https://specifications.freedesktop.org/basedir-spe...
    https://ru.wikipedia.org/wiki/Freedesktop.org
    Ответ написан
  • Почему камера HIWATCH не zoom'ится регистратором DAHUA?

    @Alexii666 Автор вопроса
    кнопкой на камере (типа джойстика) переключился в CVi режим и все заработало))))))))
    Ответ написан
    2 комментария
  • Как убрать распознавание, некоторых объектов в YOLOv8?

    Здравствуйте! Если Вы используйте метод predict или просто обращаетесь к экземпляру model(), то Вы можете использовать атрибут classes. Он принимает список с id классов, которые будут распознаны.

    id классов можно найти в .yaml файле для обучения модели. в случае в датасетом COCO, на котором обучена модель YOLO, которая идет в этой библиотеке, этот файл можно найти по ссылке https://github.com/ultralytics/ultralytics/blob/ma...

    from ultralytics import YOLO
    
    # Load a pretrained YOLOv8n model
    model = YOLO('yolov8n.pt')
    
    # Run inference on 'bus.jpg' with arguments
    model.predict('bus.jpg', save=True, imgsz=320, conf=0.5, classes=[0,1])
    
    #или так
    #model('bus.jpg', save=True, imgsz=320, conf=0.5, classes=[0,1])


    вот ссылка на документацию https://docs.ultralytics.com/modes/predict/#infere...

    и если нужен будет какой то более сложный функционал, то можно наследовать свой класс от стандартной модели и делать в нем изменения. но в большинстве случаев это не пригодится
    Ответ написан
    Комментировать
  • Как это можно отрефакторить?

    @Everything_is_bad
    Варианты:
    1. Сесть и нормально разобраться с Django ORM, там очень много возможностей. Так же для работы с ним надо перестать думать уровнем SQL, т.е перейти на уровень взаимодействия между models
    2. Либо нанять нормально программиста, он за тебя это перепишет.
    Ответ написан
    Комментировать