Задать вопрос
  • Как преобразовать массив POST в строки?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    $result = [];
    foreach ($arr as $key => $vals) {
        foreach ($vals as $idx => $val) {
        	$result[$idx][$key] = $val
        }
    }
    Ответ написан
    3 комментария
  • Как преобразовать массив POST в строки?

    @generate
    ...
    foreach ($_POST['id'] as $key => $value) {
    	$id = $value;
    	$name = $_POST['name'][$key];
    	$price = $_POST['cena_no_dost'][$key];
    
    	$text .= "({$id}, '{$name}', {$price}),\r\n";
    }
    Ответ написан
    Комментировать
  • Можно ли в Bootstrap отдельно верстать элементы страницы для десктопа и отдельно для мобильных устройств - это не осуждается?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Можно ли в Bootstrap отдельно верстать элементы страницы для десктопа и отдельно для мобильных устройств

    Можно (можно так же слово Bootstrap заменить на любое другое), но зачем (про отдачу разной верстки сервером для разных устройств знаю)?
    это не осуждается?

    Осуждается, мною.
    Ответ написан
    Комментировать
  • Как узнать, сколько дней осталось до Нового Года?

    @Everything_is_bad
    Но это только в этом году, а как сделать чтобы скрипт работал в любом году?
    т.е. ты смотреть на код и реально не понимаешь, код другой год сделать? Давай думать логически, ты знаешь как получать текущую дату? А наверно из текущей даты еще и текущий год можно узнать?
    Ответ написан
    1 комментарий
  • Как в Visual Code убрать цвета?

    Alexandre888
    @Alexandre888
    Javascript-разработчик
    Файл => Настройки => Параметры => "color decorators" в поиск => отключить "Editor: Color Decorators"

    q5Uix0k.png
    Ответ написан
    Комментировать
  • Почему VLC прекращает запись через 22 минуты?

    anthtml
    @anthtml
    Системный администратор программист радиолюбитель
    А в какой формат пишете? Помню раньше на цифровых фотоаппаратах было ограничение 24мин на файл из-за того что какой-то кодек толи mp4 толи h264 требовал дорогой лицензии, а в бесплатной версии предоставлял максимум такое время.
    Ответ написан
    1 комментарий
  • Почему вертикальный отступ gy-5 в bootstrap 5 не работает - то есть отступа не происходит?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Все работает. Что конкретно в Вашем случае, либо версия библиотеки старая, либо стили Вашего сайта перекрывают правила Bootstrap.
    Ответ написан
    Комментировать
  • Может ли, во время чтения файла одним скриптом, другой скрипт начать записывать в этот файл новые данные?

    @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 комментариев
  • Изучение vue без хорошего знания JS?

    @SigmaMale
    Middle Frontend developer (плюс минус middle)
    Использовать vue не зная JS теоретически можно, при условии, что умеете программировать на другом языке, но Ваши возможности будут очень сильно ограничены.

    Кроме того, решение самых простых проблем и ошибок превратится для Вас в ад. Получится замкнутый круг: Вы не знаете JS потому что не любите его, а не любите потому что у Вас будет негативный опыт с ним, который возникнет из за того, что Вы не знаете JS.

    Скорее всего, Вы не любите JS из за того, что уже привыкли к логике и синтаксису Go. Человеческий мозг не очень любит оказываться в новой обстановке. Среднестатистический программист знает 3 языка программирования, если Вы планируете работать в этой области, то рано или поздно Вам придется работать с другими, не привычными технологиями. По сути, в Вашем случаи, лучший способ полюбить JS - это поработать с ним какое то время, что бы мозг привык. В прошлом я сильно не любил язык PHP, так было до тех пор, пока я не поработал с ним какое то время и не привык ко всем его странностям. Сейчас я к нему нейтрально отношусь.

    P.S.
    и на vue просто в 1 файле сделал разметку с css и используешь в других страницах, а в HTML нужно копировать html и переносить, что не особо нравится.

    Для вёрстки Вы можете начать использовать шаблонизаторы (pug) и препроцессоры (SCSS). Они решают описанную Вами проблему. Обычно для их компиляции используют gulp или webpack, но Вам как новичку я рекомендую использовать программу preposs. Хотя в целом, для маленьких тестовых проектов - это вообще не проблема.
    Ответ написан
    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")


    Сделайте одинаково. Касается всех полей.
    Ответ написан
    Комментировать
  • Почему ПК запускается со второго нажатия кнопки?

    hint000
    @hint000
    у админа три руки
    1. конденсаторы на материнке;
    2. конденсаторы в БП.
    Ответ написан
    5 комментариев
  • Насколько удобно использовать visual studio code для С# разработчика?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Оставайтесь на винде и VisualStudio. Не, так-то пользоваться, конечно можно, но потом все равно захотите вернуться на студию, т.к. она и функциональнее и лучше интеграция. Если хотите начать использовать линукс, но до этого не пользовались им - поставьте для начала его в виртуалку (VirutalBox наше все) и попробуйте использовать в повседневной работе. А уже потом решайте, сможете ли полностью отказаться от винды или нет. Ставить линукс второй системой не рекомендую (слишком легко ломаются загрузчики ОС, когда их несколько и если что - чинить сложнее) - для разработки и обычной офисной работы виртуалки хватает за глаза.
    Ответ написан
    5 комментариев
  • Ноутбук быстро выключается без зарядки.Что делать?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Диагностику батареи и подсистемы питания. Скорее всего батарея израсходовала свой ресурс и её надо заменить. Существенно менее вероятно, что проблема в подсистеме питания, но эта вероятность все равно есть.
    Ответ написан
    Комментировать
  • Почему выходит надпись "CPU Throttling - Overheating Detected!"?

    xez
    @xez Куратор тега Компьютеры
    TL Junior Roo
    Все потому, что у вас перегрев и тротлинг.
    Ответ написан
    6 комментариев
  • Как извлечь данные из определенной ячейки html таблицы?

    SemanticMoscow
    @SemanticMoscow
    вам нужна коллекция элементов
    let trs = document.querySelectorAll('tr'); // получили коллекцию строк
    let td = trs[1].querySelectorAll('td')[2]; // получили из 2й по счёту строки, третью по счёту ячейку
    console.log(td);


    ох, это про php.
    извините :D
    Ответ написан
    2 комментария
  • Как реализовать отслеживание выбора select2?

    sergski
    @sergski
    web-developer
    У select2 есть собственные события, например
    let getVal = undefined;
    
    $('select').select2().on('change.select2', function(e) {
        getVal = e.target.value;
    });
    
    if ( getVal == 'option1') {
    	// делаем видимым текст1 
    }
    Ответ написан
    2 комментария
  • Как в echo вставлять условия?

    Max_Cohen
    @Max_Cohen
    Программист, который не программирует
    echo 'Бла-бла-бла. '. (($a > $b) ? 'a больше, чем b' : 'a НЕ больше, чем b'). '. Бла-бла-бла';
    Ответ написан
    Комментировать
  • Как убрать браузерную обводку у кнопок (появляющуюся в состоянии :focus) в Chrome и Firefox?

    wprivalov
    @wprivalov
    Разрабатываю сайты на токарном станке)
    для bootstrap 4 (100% рабочий вариант):

    a.active.focus,
    a.active:focus,
    a.focus,
    a:active.focus,
    a:active:focus,
    a:focus,
    button.active.focus,
    button.active:focus,
    button.focus,
    button:active.focus,
    button:active:focus,
    button:focus,
    .btn.active.focus,
    .btn.active:focus,
    .btn.focus,
    .btn:active.focus,
    .btn:active:focus,
    .btn:focus {
    outline: 0!important;
    outline-color: transparent!important;
    outline-width: 0!important;
    outline-style: none!important;
    box-shadow: 0 0 0 0 rgba(0,123,255,0)!important;
    }
    Ответ написан
    4 комментария
  • Как можно использовать результат запроса из другого файла?

    @rPman
    Предпологаю что речь идет о веб бакэнде - приложении, запускаемом на веб сервере по запросу из браузера. И главное, предполагаю что используется cgi подход, когда на каждый запрос из браузера запускается отдельный процесс php (даже если это модуль веб сервера, он конечно оптимизируется до асинхронных потоков) но содержимое памяти каждый раз пустое.

    Если у тебя mainpage.php и poisk.php это разные запросы, то через глобальные переменные данные между ними не передать.

    Нужна какая-нибудь база данных, чем бы она не являлась, например:
    * хранить в специальных заголовках запроса - cookies, эти данные как мяч будут автоматически передаваться между клиентом и сервером, т.е. все запросы от клиента будут содержать копию всех установленных cookies, до истечения их времени жизни
    * переменные сессии (используются cookies автоматически)
    сессия доступна сразу после session_start() а данные через ассоциативный массив $_SESSION (автоматически сохраняется по окончанию скрипта, учти это при параллельных запросах), идентификатор сессии автоматически поддерживается в заголовках запроса (сессия стартует когда пользователь открывает сайт, и единая для других окон, адже после перезапуска браузера, время жизни опция cookie_lifetime)
    Очень часто идентификаторы сессии или специально созданное значение в ней используется как идентификатор для поиска данных в других местах (например БД)
    * можно использовать файлы, в которых данные хранятся в сериализованном виде, в php штатно работает var_export/eval, serialize/unserialize, json_encode/json_decode - текстовые и бинарный igbinary_serialize/igbinary_unserialize (очень эффективный формат) или свой собственный, по желанию
    * можно использовать базу данных, начиная с sqlite (размещается в файле но работа с помощью sql), настоятельно рекомендую PDO - универсальная прослойка для работы с реляционными БД
    * есть еще всякие memcache, apcu, или к примеру самописный сервер данных (на сокетах и не только) но применимость - отдельный разговор

    p.s. есть иной подход, когда на php пишется полноценный веб сервер, принимающий http запросы (его напрямую редко пускают в интернет, обычно ставят еще какой-нибудь nginx для поддержки ssl и других тонкостей), в этом случае php приложение скорее всего - один инстанс (один процесс), который не завершается по завершению запроса, обрабатывает запросы клиентов асинхронно, в этом случае глобальные переменные будут доступны между запросами.
    Ответ написан
    3 комментария
  • Скрыть\показать блок по клику js?

    y0u
    @y0u Куратор тега JavaScript
    dev
    1 способ
    в JS:
    document.getElementById('hider').onclick = function() {
      document.getElementById('config-btn').classList.toggle('hidden');
    }

    в CSS:
    .hidden {
      display: none;
    }


    2 способ
    document.getElementById('hider').onclick = function() {
    	var el = document.getElementById('config-btn');
      el.style.display === 'none' ? el.style.display = 'initial' : el.style.display = 'none';
    }
    Ответ написан
    2 комментария