Задать вопрос
  • Проблема с жёстким диском?

    CityCat4
    @CityCat4
    Дома с переломом ноги
    у меня сборка где весь мусор вырезан

    Дальше можно не читать :) Мусор-то вырезан, а где гарантия, что майнер не врезан? Десятка ставится с официального образа, нет там особо ничего шляпного... (это я говорю, как человек, только вот полгода назад пересевший дома на десятку)
    Ответ написан
  • Проблема с жёстким диском?

    Adler_lug
    @Adler_lug
    Ставить винду на hdd это уже давно моветон.
    Купите ssd.
    Ответ написан
    2 комментария
  • Почему PHP8 выдаёт ошибку на стандартный цикл?

    @iljaGolubev
    PHP 8.0.0 count() will now throw TypeError on invalid countable types passed to the value parameter.
    Ошибка потому,что
    interface Countable ...
    ...
    class DOMElement extends DOMNode implements DOMParentNode, DOMChildNode {
    // не реализует Countable


    Сделал проверку перед if (is_countable($array)) {

    $dom = new DOMElement('div');
    echo var_dump(is_countable($dom));
    // bool(false)

    Так что непонятно что вы проверяли.
    Ответ написан
    Комментировать
  • Как в MySQL посчитать сумму всех значений (положительных и отрицательных), но вывести все что больше нуля?

    @maksam07
    SELECT store_id, 
           item_id, 
           itemname, 
           unit_name, 
           COALESCE(SUM(quantity), 0) AS qty 
    FROM fx_store_stock_view 
    WHERE store_id = 11 
      AND firm_id = 1 
      AND itemdisabled <> 1 
      AND item_id = 107 
    GROUP BY store_id, item_id
    HAVING qty > 0;
    Ответ написан
    1 комментарий
  • Как в Linux найти файлы одинакового размера?

    hint000
    @hint000
    у админа три руки
    Нужно получить список всех файлов с одинаковым размером. Чтобы потом уже вручную удалить дупликаты.
    Вы можете в несколько кликов искать и удалять дубликаты файлов, используя GUI-утилиту под названием FSlint. Находит не просто совпадение размера, а именно совпадение и размера, и содержимого. Имена файлов при этом могут быть разные. Просто добавляете несколько папок, по которым нужно искать дубликаты, потом среди найденных выделяете те, которые хотите удалить и удаляете. Т.е. вручную можно выбирать в какой из папок файл оставить, а в какой удалить. Можно все дубликаты оставить, можно все удалить (!).
    Утилита имеет и другие функции для поиска разных корявостей и неоптимальностей в папках (имена с "плохими" символами, пустые папки и т.д.)

    Есть ещё утилита командной строки fdupes, которая тоже ищет дубликаты.
    Ответ написан
    2 комментария
  • Почему появляется Typed property must not be accessed before initialization?

    nokimaro
    @nokimaro
    Меня невозможно остановить, если я смогу начать.
    Используйте Constructor property promotion чтобы писать меньше букв)
    <?php
    
    class Product
    {
        public function __construct(
            public int $id,
            public ?int $parentId = null
        ) {
        }
    
        public function getParentId(): ?int
        {
            return $this->parentId;
        }
    
    }
    
    $obj = new Product(1);
    if (!empty($obj->getParentId())) {
        echo 'ok';
    }


    Либо уберите типизацию у свойства и при public $parentId; ошибки не будет. Всё как и написано в тексте ошибки, нельзя обратиться к типизированному свойству до его инициализации, а значит нужно либо задать значение по умолчанию при описании свойства, либо через конструктор, либо вызвав setter.

    uninitialized и typed properties
    https://php.watch/versions/7.4/typed-properties#un...
    Ответ написан
    Комментировать
  • Как уберечь сайт который у тебя используется в портфолио, от безвкусных правок заказчика?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Просто делаете скриншоты в хорошем разрешении и их размещаете в своём портфолио.
    Ответ написан
  • Можно ли расшифровать текст хэшированный HMAC-SHA256?

    @maksam07
    Нет. (отметь решением)
    Ответ написан
    Комментировать
  • Как преобразовать число вида 20240617114532 в дату-время?

    @SunTechnik
    Вам должно быть виднее, что там за формат времени у Вас, но, на первый взгляд, это выглядит как объединение без пробелов:
    Год месяц число часы минуты секунды.
    Соответственно Ваш запрос легко превращается в интервал (или два условия больше - меньше)
    Ответ написан
    1 комментарий
  • Куда делись органы редактирования комментариев и ответов?

    Zettabyte
    @Zettabyte
    Проф. восстановление данных ▪ Вопрос? См. профиль
    Не загружается кастомный шрифт Тостера.
    Принудительно очистите кэш и перезагрузите страницу. Либо вообще удалите все данные, которые у вас хранятся для этого сайта.

    UPD: Или спрайт с иконками, как пишут ниже. Я при первом просмотре кода почему-то обратил внимание на шрифт.

    На крайний случай всегда есть https://portableapps.com/apps/internet/firefox_portable
    Можно распаковать в любую удобную папку, а потом снести простым её удалением.
    Ответ написан
    4 комментария
  • Лучше ли использовать enum для цвета нежели struct?

    @res2001
    Developer, ex-admin
    Как я понимаю через выше aligment тем лучше?

    Нет. Это бред. Тут не применимы термины лучше/хуже.

    Alignment (выравнивание) - это просто свойство типа данных.
    enum по умолчанию имеет тип int, соответственно и все его свойства наследуются. В С++ (с версии 17, если не ошибоаюсь) можно самому выбрать тип enum. Для выравнивания обычно действует простое правило - тип должен быть выровнен в памяти на границу кратную его размеру. Например у int размер 4 байта (обычно), и выравнивание должно быть по границе 4 байт. у char/uint8_t - размер 1 байт, соответственно ограничений по выравниванию нет, т.е. выравнивание по границе байта. Тип SDL_Color - это, видимо, структура, состоящая из 4 uint8_t (или что там в SDL используют для unsigned char), выравнивание для структуры берется из типа ее первого поля (если аттрибутами не задано другое).
    Используй типизированный в uint8_t enum и будет тебе счастье.
    https://en.cppreference.com/w/cpp/language/enum

    Кстати, выравнивание, это не ограничение С++ - это ограничение процессора на аппаратном уровне. Правда почти все современные процессоры уже не имеют этого ограничения и нормально жуют не выровненные типы, но при этом операции выполняют медленнее, чем с выровненными. Фактически процы просто научились "маскировать" это ограничение. Поэтому ограничение в языке осталось.
    К тому же все еще есть процессоры, где требование выравнивания действует, но это в основном что-то из разряда микроконтроллеров. На таких процессорах использование не выровненных типов приводит к ошибке шины и вылету программы.
    Обычно тебе не нужно думать про выравнивание, т.к. компилятор об этом позаботится за тебя. Но бывают ситуации, когда программист должен это учитывать. Например когда ты читаешь поток бинарных данных из сети или из файла, и данные в потоке - это что-то сложнее, чем байты и символы.
    Ответ написан
    1 комментарий
  • Лучше ли использовать enum для цвета нежели struct?

    CityCat4
    @CityCat4 Куратор тега C
    Дома с переломом ноги
    Вообще говоря, вкусовщина. align 4 означает выравнивание на границу слова, если там данных один байт, три пропадает. align 1 - никакого выравнивания, данные идут друг за другом. Но эффект (в виде разницы в требовании памяти) будет проявляться только при большом количестве обьектов данного типа (миллионы единиц).
    Ответ написан
    Комментировать
  • Лучше ли использовать enum для цвета нежели struct?

    wataru
    @wataru Куратор тега C++
    Разработчик на С++, экс-олимпиадник.
    Без разницы. Используйте то, что логичнее смотрится в коде. Разницу в производительности, во-первых, вы получите лишь в очень специфичных случаях (при передаче в функцию enum скорее всего окажется в регистре, а вот структура полезет на стек. В итоге enum окажется быстрее), во-вторых, только если читать вы будете миллионы стркутур. И то, вам должно не повезсти с кешем процессора и префетчером.

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

    @rPman
    первым, кто открывает файл, должен использовать функцию flock над идентификатором файла fopen
    $file = fopen('filename.txt', 'r');
    // пробуем установить эксклюзивную блокировку
    if (flock($file, LOCK_EX)) {
        // выполнение операций чтения
        // ...
        
        // освобождаем блокировку
        flock($file, LOCK_UN);
    } else {
        echo "Не удалось установить блокировку на файл.\n";
    }
    fclose($file);


    это системная фича posix, не привязанная к языку программирования

    p.s. аналогичные механизмы есть у windows, при открытии файла указывается тип блокировки shared...
    Ответ написан
    5 комментариев
  • Как исправить чтобы тянуло 1080?

    @Drno
    Вы новости не читаете? ютуб в РФ замедляют. используйте ВПН или goodByDPI
    Ответ написан
    2 комментария
  • Форма обратной связи не сохраняет данные. Присылает пустые письма. Выдает ошибку "Name is required Email is required Message is required". почему?

    delphinpro
    @delphinpro Куратор тега PHP
    frontend developer
    Селекторы регистрозависимые

    У вас идентификаторы в html с большой буквы

    <input type="text" class="form-control" id="Name" placeholder="Иван Иванов">


    А в javascript с маленькой

    var name = $("#name").val();

    вот эти:
    id="Name"
    $("#name")


    Сделайте одинаково. Касается всех полей.
    Ответ написан
    Комментировать
  • Какую кодировку выбрать для бд чтобы хранить фото?

    @alexalexes
    В базе данных, обычно, не хранят бинарные данные файлов.
    Кладете на файловый сервер файл, берете путь к этому файлу и записываете в поле таблицы.
    Если очень приспичило какой-то бинарник положить в поле таблицы, то для этого есть binary/varbinary type.
    Но злоупотреблять возможностью записывать безразмерные данные в одно поле не стоит - намучаетесь с бекапами.
    Ответ написан
    Комментировать
  • Какую кодировку выбрать для бд чтобы хранить фото?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Любую. На BLOB кодировка не влияет.
    Но по уму фотографии не хранят в БД. Их записывают как отдельные файлы с уникальными именами, а в базе хранят оригинальное имя файла и путь к файлу.
    Ответ написан
    Комментировать
  • Какую кодировку выбрать для бд чтобы хранить фото?

    @rPman
    бинарные типы данных binary, varbinary или blob потому и бинарные, что к ним не применяются правила символьной трансляции (charset), т.е. к примеру их нельзя сортировать по алфавиту.

    p.s. настоятельно рекомендую трижды подумать, зачем тебе нужно хранить изображения в базе данных, и с высокой вероятностью лучше их хранить в файлах на диске а в базе только имя файла (а можно и имена файлов привести к идентификаторам базы).
    Ответ написан
    Комментировать
  • Экран зависает намертво, проблема в видеокарте?

    CityCat4
    @CityCat4
    Дома с переломом ноги
    Похоже на дохлую видюху. Проблемы с видеопамятью или отвал чипа. Если видюха старая/дешевая - проще заменить.
    Ответ написан
    4 комментария