Задать вопрос
  • Как с html формы собирать данные в .txt?

    sergiks
    @sergiks Куратор тега PHP
    ♬♬
    Начните с упрощенной формы с единственным полем и кнопкой submit. Добейтесь, чтобы данные записывались в файл.

    Полям надо давать имя: атрибут name Например
    <input type="text" name="first_name" placeholder="First name">
    
    <select name="day_of_week">
      <option value="1">Monday</option>
      <option value="2">Tuesday</option>
      <option value="3">Wednesday</option>
    </select>


    PHP примерно такой:
    <?php
    $filename = 'form_responses.txt';
    
    if (!empty($_POST)) {
        $record = [
            // перечисляются поля формы
            'first_name' => filter_input(INPUT_POST, 'first_name', FILTER_SANITIZE_STRING),
            'day_of_week' => filter_input(INPUT_POST, 'day_of_week', FILTER_SANITIZE_NUMBER_INT),
        ];
    
        $recordString = implode('; ', $record) . PHP_EOL; // склеить значения через точку с запятой
    
        file_put_contents($filename, $recordString, FILE_APPEND);
    }
    Ответ написан
    Комментировать
  • Как игнорировать .gitignore?

    trapwalker
    @trapwalker
    Программист, энтузиаст
    в .gitignore перечислены шаблоны имён файлов, которые гит будет игнорировать и не будет предлагать добавить в репозиторий, однако если файл уже есть в репозитрии и при этом также его имя соответствует одной из строчек файла .gitignore, то гит будет с ним работать как и со всеми прочими.

    Ваш вопрос сформулирован очень непрозрачно. В репозитории скорее всего вообще нет файлов, которые перечислены в gitignore, но если их добавили вручную, или они попали в рпозиторий до добавления в gitignore, то вы получите их локально наравне со всеми остальными файлами в репозитории при обычном клонировани.

    Так что независимо от того, что у вас написано в gitignore при клонировании вы получите абсолютно все файлы, что ииеются в репозитории, а тех, что там не имеются, вы, очевидно, не получите.
    Ответ написан
  • Чем проверить hdd на бэды?

    gbg
    @gbg Куратор тега Железо
    Любые ответы на любые вопросы
    У меня алгоритм такой - смотрим SMART, если релокейтов больше 5 штук, или если драйв работал больше года - делаем полную проверку поверхности с перезаписью.

    Еще раз смотрим смарт - если релокейтов стало больше - диск отправляем на почетную пенсию.
    Ответ написан
    Комментировать
  • Чем проверить hdd на бэды?

    @tukreb
    Старые диски (без AF, обычно до 2012 года выпуска и менее 2 ТБ) - проверять можно MHDD
    Новые диски AF - WHDD, hddscan или Виктория.

    Процедура проверки следующая:
    1. Обязательно делать посекторный ERASE, чтобы перезаписались сектора и обновился SMART.
    2. Далее читаем поверхность на бэды.

    Если не выполните 1 пункт, то не получите точные данные, такие как количество реллокейтет или повреждённые сектора. Причина в том, что диск может считать проблемные сектора, а вот записать нет, именно первый пункт вычисляет такие сектора и заодно помечает их в SMART.
    Так же бывают pending сектора - это временно зависшие, помогает многократное перезапись этого сектора, хотя не гарантировано и диск может пометить его как бэд, тут как повезёт.
    Ответ написан
    Комментировать
  • Чем проверить hdd на бэды?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Те которые на 100Гб можно подарить детям на игрушки. А для больших (несколько терабайт) - моешь посмотреть SMART информацию (как советуют выше).

    Еще скачай себе любой линукс на флешку. С нее загрузившись можно найти много разных утилит для теста поферхности.
    Ответ написан
    2 комментария
  • Что за формат Iterator?

    Maksclub
    @Maksclub Куратор тега PHP
    что за формат такой Iterator и как с ним взаимодействовать?

    итерироваться

    $iterator = $reader->fetchColumnByName('title');
    foreach($iterator  as $item) {
         var_dump($item);
    }


    А это первая ссылка в гугле по запросу iterator php
    https://www.php.net/manual/ru/class.iterator.php

    По второму вопросу — походу не найдена такая колонка в хедере
    Вот код, который кидает его:
    https://github.com/thephpleague/csv/blob/4b5d1df71...

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

    vabka
    @vabka Куратор тега Веб-разработка
    cron например, либо свой демон, который будет смотреть на время и периодически запускать нужные задачи.

    А чтобы несколько серверов не конфликтовали друг с другом - надо либо как-то их оркестрировать, чтобы работа разделялась на несколько серверов (Нужно смотреть на конкретную задачу, чтобы сказать, как можно разделить и можно ли вообще), либо делать распределённые блокировки.
    Ответ написан
    Комментировать
  • Что лучше, по одной или несколько записей при INSERT?

    @Akina
    Сетевой и системный админ, SQL-программист.
    Запись пакетом быстрее и менее нагрузочна, но выше вероятность потери при сбоях.

    PS. 40 записей в секунду - это в общем-то ни о чём..
    Ответ написан
    Комментировать
  • Как починить ПК после чистки системника?

    saboteur_kiev
    @saboteur_kiev Куратор тега Железо
    software engineer
    раньше запускалось на 60 фпс, заметно начало фризить.


    Больше напоминает троттлинг - снижение частоты процессора при перегреве.

    Проверить еще раз нормально ли прижат кулер к процессору, если снимала кулер, возможно термопасту нужно заменить. Проверить что точно кулер крутится.
    Короче проверь систему охлаждения.
    Ответ написан
    1 комментарий
  • Как получить список всех годов из таблицы mysql?

    rozhnev
    @rozhnev Куратор тега PHP
    Fullstack programmer, DBA, медленно, дорого
    select distinct year(d) from t;

    https://sqlize.online/s/mW

    Это похоже на X/Y проблему. Напишите что вы хотите получит в итоге
    Ответ написан
    Комментировать
  • Как распарсить .txt файл с кириллицей?

    @humoured
    Вы всё на свете найдёте в коробке с карандашами
    json_decode прекрасно сделает всё сам, никаких дополнительных параметров не нужно. Загуглите JSON_UNESCAPED_UNICODE, если интересно что это за кодировка и как от неё отказаться.
    Ответ написан
    Комментировать
  • Как игнорировать или пропускать варнинги при вставке значений из одного массива в другой?

    @rPman
    если тебе не надо это контролировать, то игнорировать
    @$data->{'id'}

    p.s. вторым параметром json_decode пропиши true, тогда результатом будет не object а array в нужном тебе виде, да и работать можно будет с ним $data['id']
    Ответ написан
    9 комментариев
  • Как игнорировать или пропускать варнинги при вставке значений из одного массива в другой?

    @humoured
    Вы всё на свете найдёте в коробке с карандашами
    Нужно проверять каждое значение перед использованием.
    Смотрите в сторону конструкций empty($var), isset($arr['index']), $myVar = $input[123] ?? null и прочих
    Ответ написан
    3 комментария
  • Почему PHPStorm советует static для fn функций?

    miraage
    @miraage
    Старый прогер
    Не кодил на PHP 100 лет, точного ответа не подскажу. Однако идея, что статическая лямбда будет видеть меньше переменных -> проще для GC = уже кажется, как небольшая победа.

    https://www.designcise.com/web/tutorial/what-are-s...
    https://www.php.net/manual/en/functions.anonymous....
    Ответ написан
    1 комментарий
  • Как найти папку с DOCUMENT_ROOT?

    svisch
    @svisch
    /home/u/username/sitename.ru/public_html - это абсолютный путь расположения скрипта на веб-сервере.
    В админке битрикс скорее всего видит файлы начиная с public_html, где он и лежит видимо.
    Ответ написан
    2 комментария
  • Как защитить приложение на js+php пока не заплатили?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    1. Развернуть приложение полностью на 100% на своем сервере, а код разместить в своем приватном репозитории.
    2. Показать клиенту, что все задачи выполнены по ТЗ.
    3. Получить оплату на 100%.
    4. Разместить приложение на сервере клиента, а код - в его репозитории.


    Просто по договоренности оплата пойдет только после установки программы на компьютер клиента.

    Если в прошлый раз клиент кинул - что помешает ему сейчас кинуть? Просто не передавайте результат до оплаты, аргументируя это предыдущим случаем.
    Ответ написан
  • На основе чего генерируются чертеж?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Обычная алгебра с капелькой тригонометрии и какая-то библиотека для формирования PDF.
    Ответ написан
    Комментировать
  • Насколько хорошо бэкенд-разработчик должен знать SQL?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Ожидаю уверенного владения SQL как минимум в стандарте 2003, а также понимание реляционной теории. Ну и надо понимать, что кандидатов джунского уровня сотня в неделю, чтобы пробиться на место, нужно выделяться среди других, поэтому чем больше знаешь, тем лучше. Покажешь умение читать планы выполнения - плюс, показал владение оконными функциями - ещё плюс, рассказал про WAL при обсуждении транзакций - снова плюс, смог к этому ещё и объяснить про MVCC - совсем молодец. И т.д. и т.п.
    Ответ написан
    Комментировать
  • Насколько хорошо бэкенд-разработчик должен знать SQL?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Безотносительно SQL. Любое собеседование на Джуна - это экзекуция. Потому что опыта нет. И от скуки тебя гоняют по всем основам. Если SQL то погнали. Нормальные формы. Транзакция. Если язык java/c# то давай напиши сортировку в 2 потока.

    Вобщем бить будут. Поэтому зубри.
    Ответ написан
    Комментировать
  • Для чего использовать __DIR__?

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