Задать вопрос
  • Как разговаривать с клиентом о технических деталях?

    opium
    @opium
    Просто люблю качественно работать
    Ну если клиент хочет дешевле то оплачивает разработку ТЗ, если дороже то можно вот так то эпо наитию работать с оплатой каждого чиха
    Ответ написан
    Комментировать
  • Почему value="" записывает пустоту, а не NULL?

    @Akina
    Сетевой и системный админ, SQL-программист.
    NULL и пустая строка есть две совершенно разные вещи (исключение - Оракл). NULL - это отсутствие любого, в том числе пустого, значения.
    Ответ написан
    Комментировать
  • Поможете с функцией PHP?

    ssenj
    @ssenj
    HTML, CSS, PHP, WordPress, Bitrix
    В ошибке четко написано `Невозможно повторно назначить автоглобальную переменную _POST`
    При объявлении функции переименуй параметр $_POST, например так:
    function get_test_data_result($test_all_data, $result, $post) { ... }

    Либо, как советуют выше, убери его из параметров. Глобальные переменные доступны везде и внутри функции тоже.
    Ответ написан
    1 комментарий
  • Поможете с функцией PHP?

    @galaxy
    Суперглобальные переменные ($_GET, $_POST и т.д.) потому так и называются, что доступны всегда и из любого места.
    Вы назвали параметр своей функции _POST и таким образом пытаетесь перезатереть суперглобальную переменную. Так делать нельзя.
    Все будет работать, если убрать _POST из параметров (и не передавать его при вызове - он и так отовсюду доступен).
    Ответ написан
    2 комментария
  • Все говнокодеры?

    Adamos
    @Adamos
    Опыт разработки не дает в полной мере прочувствовать вонь говнокода.
    Для этого нужен опыт поддержки. С каждым годом нарушение принципов чистого кода воняет все сильнее.
    Ответ написан
  • Все говнокодеры?

    DevMan
    @DevMan
    в основном так и есть.
    бизнесу насрать на наши модели и архитектуру, ему надо деньги делать и ещё вчера.

    если вылизывать архитектуру со старта - никогда не взлетишь. а когда и если взлетишь, поляна будет уже засеяна другими, которые срать–плевали на красоту кода.

    это итеративный процесс: сначала столбим делянку как-нибудь (MVP), затем так и живём или приводим её в порядок.
    Ответ написан
    Комментировать
  • Какое окружение вы используете для разработки php?

    DevMan
    @DevMan
    phpstorm для основной разработки, любой редактор под руками (vsc, atom, sublime, nano, vim...) для посмотреть/быстрых маленьких правок.

    сервер: все (за редким исключением) ставлю из пакетов, затем допиливаю ручками.

    phpmyadmin/аналоги–для–других–баз последний раз видел году в 2010. с тех пор использую либо консоль, либо гуевые тулзы (для удаленного доступа через ssh/http–тунель).

    докеры, вагранты, "идентичное проду окружение", "сборки – гавно" – это все типичный булшит и базвордс.
    иногда перечисленное реально нужно и полезно (сам пользую где надо), но далеко не всегда/везде и не всем.

    разрабатываете в одиночку – вообще пофигу на чем, лишь бы вас устраивало и было вам удобно.
    разрабатываете в команде – пока ваш код запускается у других участников (что не проблема, если понимать что делаешь/особенности языка под разные платформы/следование принятым соглашениям), всем плевать на чем вы его у себя крутите. хоть стоя в лыжах в гамаке и на утюге.
    Ответ написан
    12 комментариев
  • Почему при сложении 0.001 типа float или doable 1000 раз через несколько нулей после запятой появляются ещё числа из ниоткуда и как это решить?

    gdt
    @gdt
    Программист
    И ни одного пояснения :)
    Если вам нужно, чтобы работало так, как вы ожидаете - воспользуйтесь замечательным советом Бобби Шифер .
    Если объяснить на пальцах - есть два способа хранить числа с точкой - fixed point (фиксированная точка) и floating point (плавающая точка). У себя в примере вы используете тип данных с плавающей точкой (неспроста он называется float, а double - это float с двойной точностью, только и всего). Грубо говоря, числа с плавающей точкой представляются так: M*10^E, т. е. в памяти два значения M и E просто следуют друг за другом. К сожалению, компьютеры используют двоичную систему счисления, и далеко не всегда то, что можно просто записать в десятичной системе счисления - настолько же просто записать в двоичной, и наоборот. С учётом того, что объём памяти, выделяемый под хранение мантиссы, ограничен - она округляется до ближайшего двоичного представления, что после перевода назад, в десятичную систему счисления, и даёт такой, на первый взгляд, контринтуитивный результат.
    Для разнообразия можете попробовать сложить очень маленькое и очень большое число.
    Ответ написан
    3 комментария
  • Как добавить предлагаемые варианты при вводе в input?

    MrDecoy
    @MrDecoy Куратор тега JavaScript
    Верставший фронтендер
    В простом виде - htmlbook.ru/html/datalist
    А вообще такие вещи, как правило, реализуются так: делают ajax запрос по мере ввода с некоторым debounce эффектом, и отрисовывают кастомные автокомплиты.
    Например вот: autocomplete-js.com
    Или вот https://tarekraafat.github.io/autoComplete.js/#/
    Или вот https://github.com/algolia/autocomplete
    Ответ написан
    1 комментарий
  • Как сделать задний фон как на изображении?

    Ankhena
    @Ankhena Куратор тега CSS
    Нежно люблю верстку
    filter: blur(5px); для псевдо
    https://jsfiddle.net/0tbap2qf/
    Ответ написан
    Комментировать
  • Показывается не тот файл в плагине browsersync?

    @Froggyweb
    .pipe(gulp.dest('./));

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

    Spartak-2205
    @Spartak-2205
    Разработка и создание сайтов
    Как вариант, можно воспользоваться функцией filemtime
    echo '<img src="img.png?'.filemtime('img.png').'">';
    Ответ написан
    2 комментария
  • Как правильно делать по бэм?

    iiiBird
    @iiiBird Куратор тега CSS
    Пока ты спишь - твой конкурент совершенствуется
    почему вы всегда забываете, что блоки вы можете плодить как угодно и где угодно. вкладывать блоки внутрь блоков тоже сколько угодно.
    в твоем случае, если у тебя меню получается слишком громоздким, то сделай из него отдельный независимый блок.
    который даже к header может не относиться. т.е. внутри .top-header у тебя будет блок .main-navigation или .main-menu
    и использовать уже сможешь его не только в хедере, а где угодно.
    Ответ написан
    4 комментария
  • Как PHP код понимает, где находится БД MySQL?

    Recosh
    @Recosh
    Программист студент
    База mysql по умолчанию работает через TCP подключение, порт 3306. В конфигурационном файле будет указан адрес (host) 127.0.0.1 или localhost, что означает, что подключаемся сами к себе.
    Ответ написан
    1 комментарий
  • Заменяема ли папка Windows?

    Jump
    @Jump Куратор тега Windows
    Системный администратор со стажем.
    Нет.
    Не заменяема, Работать не будет.
    Ответ написан
    4 комментария
  • Какая среда разработки на JavaScript для продвинутых?

    DollyPapper
    @DollyPapper
    Вебшторм это одна из множества IDE предлагаемых компанией JetBrains. У нее на той же самой основе есть IDE для питона, го, сишарп, руби и т. д.
    ИМХО это самые лучшие и удобные IDE для разработки, т. к. имеют в себе множество инструментов из коробки, отличный intellisense, и главное опять же - всё из коробки. Функционала для JS подобного вебшторму можно добиться например и в VSCode, но нужно писать конфиг и ставить кучу плагинов. Например мой конфиг для VSCode на данный момент идеально заточен под меня мне очень удобно им пользоваться, но там 1000 строк которые я добавлял и модифицировал порядка 2-3 лет, по мере того как узнавал новые, полезные для себя вещи в этой, не побоюсь этого слова уже IDE. Вопрос в том - а хотите ли вы пилить под себя что-то столько времени, или хотите сесть и работать.
    Ответ написан
    Комментировать
  • Как вывести ник автора поста, зная его id?

    alexey-m-ukolov
    @alexey-m-ukolov Куратор тега Laravel
    $post->author->username, если у вас отношения в моделях нормально описаны.
    Ответ написан
    Комментировать
  • Почему перестал работать array_unique?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    А вся проблема в том, что ты не понимаешь, что делает "твой" код.
    И следовательно, не можешь его отлаживать.

    Это к вопросу о том, как легко и приятно быть программистом, когда код за тебя пишут другие.
    Ну вот оно тебе и прилетело в обраточку, это "приятно"

    Исходная задача алгоритмически примитивная
    И чтобы её не решить, надо совсем уж не годиться в программисты.

    Поэтому тебе надо сейчас либо собраться и решить задачу самостоятельно, продумав алгоритм и реализовав его простыми средствами - циклами и условными переходами. Без всяких красивых слов типа array_diff, array_filter и прочих. Потому что использовать синтаксический сахар можно только тогда, когда ты понимаешь, как он работает внутри. Если не понимаешь - то код надо писать руками, а не волшебными функциями.
    И после этого, понимая как работает твой код, ты сможешь заняться отладкой, запуская его, и выводя промежуточные результаты.
    Либо, если не выйдет, то продать компьютер и идти работать в макдональдс.

    А вот это вот как у тебя сейчас - "ой мне один добрый дядя написал кодик, но он ниработаит, давайте другой добрый дядя мне его починит" - это не будет работать. Два раза тебе помогут, но постоянно жить чужим трудом не получится. А "программист", который не умеет писать код сложнее уровня "вайл муэскуэль фетч эррей" никому не нужен.

    что такое array_filter? Это реализация примитивного цикла,
    foreach ($array as $key => $value) {
        if (!условие фильтра) {
            unset($array[$key]);
        }
    }

    что такое array_diff? Это реализация чуть более сложного алгоритма, когда мы перебираем первый массив, и смотрим, есть ли такой же элемент во втором. Если нет - то записываем это значение в третий.
    И так далее.
    Ответ написан
    1 комментарий